physics_workload.app.models.unit

Attributes

Classes

Unit

Academic unit, e.g. PHYS1001

Functions

Module Contents

physics_workload.app.models.unit.User
class physics_workload.app.models.unit.Unit

Bases: app.models.common.ModelCommon

Academic unit, e.g. PHYS1001

icon = 'book'
url_root = 'module'
code
name
academic_group
students
lectures
problem_classes
coursework
synoptic_lectures
exams
credits
exam_mark_fraction
coursework_mark_fraction
has_dissertation
has_placement
description
notes
class Meta
ordering = ['name']
verbose_name = 'Module'
verbose_name_plural = 'Modules'
constraints
__str__() str
get_absolute_url_if_permitted(user: User) str
get_short_name() str
Returns:

Just returns the code. Needed for parity with the AcademicGroup model, for Task ownership.

get_instance_header_short() str
Returns:

Wraps instance header, but only uses a short nane,

get_marked_dissertation_count() int | None
Returns:

Returns the total number of dissertations marked

update_load() bool
Returns:

True if the load of any of the tasks needed updating.

physics_workload.app.models.unit.is_user_assigned_to_unit(user: User, unit: Unit) bool