-
Notifications
You must be signed in to change notification settings - Fork 84
Models
Some3141 edited this page Jan 15, 2015
·
7 revisions
Each model is described by its mutable fields. In addition, non-integer keys are described as "key"
- emails: Emails that belong to the user.
- name: A name object as defined in the Google API (https://developers.google.com/+/api/latest/people#name)
- key: Unique string; used by the client for submission (e.g., "cal/cs61A/fa14/proj1")
- display_name: The name that will be displayed to users
- points: The number of points that this assignment is worth.
- templates: The file templates distributed for this assignment.
- creator: a User.id
- course: A Course.Name that maps this assignment to a Course in the Courses table.
- max_group_size: the maximum size of a group for this assignment
- due_date: The due date that will be displayed on the OK frontend and shown to students.
- lock_date: The due that after which it will be impossible to do anything for this assignment unless you are an admin for the course.
- services_requested: The services that this assignment wants (e.g. composition grading, autograding)
- key: Unique string (e.g., "cal/cs61A/fa14")
- display_name: The name that will be displayed to users
- institution: A string that represents the institution that this course is a part of.
- offering: String that describes the offering of the course (e.g. “Spring 2015”)
- instructors: The creator/owners of this course
- active: whether the course is currently active (only instructors can deactivate a course)
- course: Course.name
- user: User.id
- role: string in {instructor, staff, student}
- identifier: string (e.g., login)
Raw data dump received from an authenticated client.
- submitter: A User.id
- assignment: An Assignment.name
- sent: Client timestamp
- received: Server timestamp
- messages: the raw messages from the client
- tags: Any tags that this Backup has
Any backup sent with the --submit flag.
- key: Backup.id (TODO Cache scores here?)
(At most one final submission for each group and one for each student without a group)
- id: The Backup.id for the submission that will be graded
- assignment: The assignment that this is a final submission for
- group: The group that this submission is for (optional)
- users: People submitting (everyone in the group or just a single person) (TODO Cache/store grading status here?)
- before: Backup.id (or None to compare to template)
- after: Backup.id
- diff: The computed diff
- points: the number of points earned (A floating point number)
- feedback: A string representing the feedback for this score.
- created: When the score was assigned
- grader: Who assigned the score.
- submission: A SubmissionKey for the submission that this score belongs to.
- author: A UserKey that corresponds to the author of the comment
- created: When the comment was made
- submission: Backup.id
- filename: Which file this comment corresponds to
- line: The line number for the comment
- message: The message for the comment
- assignment: The assignment that this group is for
- active: Users in a particular order (Partner 1, Partner 2, etc).
- pending: Users who have received an invitation
Represents a Notification that needs to be sent out
- url: The URL that this notification will take the user to once clicked
- users: The users who have not yet received this notification. Once the length of this list is 0, then this notification is deleted.
- message: The message to display
Represents a message given to us from the ok client. It is a dictionary of key-value pairs.
- contents: the value of each message
- kind: the key of each message
A version of the client side resources for auto-updating.
- name: The name of the client (e.g. 'ok', 'git')
- versions: All past versions that have been used
- current_version: the current version in use for this course
- base_url: the base_url where this resource lies
- course: the course that this version is for.
A log for all group addition/deletions in case of cheating.
- created: When this event happened
- event_type: The type of event that happened
- user: The person whose credentials the event happened under
- description: A description of the event
- obj: The object that was changed by the event.
A Queue for a staff to do composition scoring.
- assignment: The Assignment that the queue is for
- assigned_staff: The staff member that is assigned to this queue
Describes a job that has not finished running yet.
- job_type: The type of job that will be run. These will be defined in an extensible analytics framework.
- assignments: list of assignments that this job is run on.
- active: A computed boolean that will be "false" when this job is done running.
- state: A dictionary of state variables that this job can use
- next_run: The time of the next run of this job
The result of an Analytics job. It is up to the Analytics Job to use this interface.
- state: A dictionary of state variables that is the result of a job.
- Course: the course that this is for
- AssignmentID: The assignment that this is for
- job_type: The type of job that this is the result of