nbgrader: Assignment List extension does not support multiple classes
I have a lot of students this year in multiple courses attempting to use nbgrader on jupyterhub (between Physics, Biology, and Computer Science). It appears that every time a student wants to see the Assignments tab for a particular course, they have to edit their nbgrader_config.py file:
c = get_config()
c.NbGrader.course_id = "cs245"
c.TransferApp.exchange_directory = "/opt/nbgrader/exchange/"
This is really a pain, and I’d rather not have students even know about such things, let alone have to edit the file.
Suggestion: make the system know what students are in a course, and show the students all courses that they are enrolled in.
Complication: because there is only one course now (course_id) how will the system know what ID to use for fetch/submission. The UI should know.
About this issue
- Original URL
- State: closed
- Created 8 years ago
- Comments: 21 (20 by maintainers)
@jhamrick UCSD is deploying JupyterHub with
nbgrader
, we really need to do access control for multiple courses in the assignments list extension, we might be able to contribute some code, could you give us some hints on how to implement that?No problem! I might have some time to work on this soon, and just wanted to make sure I wasn’t going to reinvent anything you’d already done 😃
@zonca you can
GET <hub-host>/hub/api/users/:username
to get the user model, which will include their group membership. If you use the JUPYTERHUB_API_TOKEN env variable, you will be able to access this field for the current user.I am having trouble finding the documentation on how to configure the assignment list page to include different courses. Can you point me to the code/docs for that?