Skip to content

Projects

AttributeType (TimeStampedModel) django-model

An attribute type indicates the data type of the attribute. Examples include Date, Float, Int, Text, and Yes/No.

Attributes:

Name Type Description
name str

name of attribute data type

created: AutoCreatedField django-field

created

modified: AutoLastModifiedField django-field

modified

name: CharField django-field

name

Project (TimeStampedModel) django-model

A project is a container that includes users, allocations, publications, grants, and other research output.

Attributes:

Name Type Description
title str

name of the project

pi User

represents the User object of the project's PI

description str

description of the project

field_of_science FieldOfScience

represents the field of science for this project

status ProjectStatusChoice

represents the ProjectStatusChoice of this project

force_review bool

indicates whether or not to force a review for the project

requires_review bool

indicates whether or not the project requires review

created: AutoCreatedField django-field

created

description: TextField django-field

description

field_of_science: ForeignKey django-field

field of science

force_review: BooleanField django-field

force review

last_project_review property readonly

Returns:

Type Description
ProjectReview

the last project review that was created for this project

latest_grant property readonly

Returns:

Type Description
Grant

the most recent grant for this project, or None if there are no grants

latest_publication property readonly

Returns:

Type Description
Publication

the most recent publication for this project, or None if there are no publications

modified: AutoLastModifiedField django-field

modified

needs_review property readonly

Returns:

Type Description
bool

whether or not the project needs review

pi: ForeignKey django-field

pi

requires_review: BooleanField django-field

requires review

status: ForeignKey django-field

status

title: CharField django-field

title

clean

Validates the project and raises errors if the project is invalid.

has_perm

Parameters:

Name Type Description Default
user User

user to check permissions for

required
perm ProjectPermission

permission to check for in user's list

required

Returns:

Type Description
bool

whether or not the user has the specified permission

save_without_historical_record

Save model without saving a historical record

Make sure you know what you're doing before you use this method.

user_permissions

Parameters:

Name Type Description Default
user User

represents the user whose permissions are to be retrieved

required

Returns:

Type Description
list[ProjectPermission]

a list of the user's permissions for the project

ProjectAdminComment (TimeStampedModel) django-model

A project admin comment is a comment that an admin can make on a project.

Attributes:

Name Type Description
project Project

links the project the comment is from to the comment

author User

represents the admin who authored the comment

comment str

text input from the project admin containing the comment

author: ForeignKey django-field

author

comment: TextField django-field

comment

created: AutoCreatedField django-field

created

modified: AutoLastModifiedField django-field

modified

project: ForeignKey django-field

project

ProjectAttribute (TimeStampedModel) django-model

A project attribute class links a project attribute type and a project.

Attributes:

Name Type Description
proj_attr_type ProjectAttributeType

project attribute type to link

project Project

project to link

value str

value of the project attribute

created: AutoCreatedField django-field

created

modified: AutoLastModifiedField django-field

modified

proj_attr_type: ForeignKey django-field

proj attr type

project: ForeignKey django-field

project

value: CharField django-field

value

clean

Validates the project and raises errors if the project is invalid.

save

Saves the project attribute.

save_without_historical_record

Save model without saving a historical record

Make sure you know what you're doing before you use this method.

ProjectAttributeType (TimeStampedModel) django-model

A project attribute type indicates the type of the attribute. Examples include Project ID and Account Number.

Attributes:

Name Type Description
attribute_type AttributeType

indicates the data type of the attribute

name str

name of project attribute type

has_usage bool

indicates whether or not the attribute type has usage

is_required bool

indicates whether or not the attribute is required

is_unique bool

indicates whether or not the value is unique

is_private bool

indicates whether or not the attribute type is private

is_changeable bool

indicates whether or not the attribute type is changeable

attribute_type: ForeignKey django-field

attribute type

created: AutoCreatedField django-field

created

has_usage: BooleanField django-field

has usage

is_changeable: BooleanField django-field

is changeable

is_private: BooleanField django-field

is private

is_required: BooleanField django-field

is required

is_unique: BooleanField django-field

is unique

modified: AutoLastModifiedField django-field

modified

name: CharField django-field

name

save_without_historical_record

Save model without saving a historical record

Make sure you know what you're doing before you use this method.

ProjectAttributeUsage (TimeStampedModel) django-model

Project attribute usage indicates the usage of a project attribute.

Attributes:

Name Type Description
project_attribute ProjectAttribute

links the usage to its project attribute

value float

usage value of the project attribute

created: AutoCreatedField django-field

created

modified: AutoLastModifiedField django-field

modified

project_attribute: OneToOneField django-field

project attribute

value: FloatField django-field

value

save_without_historical_record

Save model without saving a historical record

Make sure you know what you're doing before you use this method.

ProjectPermission (Enum)

A project permission stores the user, manager, pi, and update fields of a project.

ProjectReview (TimeStampedModel) django-model

A project review is what a user submits to their PI when their project status is Pending.

Attributes:

Name Type Description
project Project

links the project to its review

status ProjectReviewStatusChoice

links the project review to its status

reason_for_not_updating_project str

text input from the user indicating why the project was not updated

created: AutoCreatedField django-field

created

modified: AutoLastModifiedField django-field

modified

project: ForeignKey django-field

project

reason_for_not_updating_project: TextField blank django-field nullable

reason for not updating project

status: ForeignKey django-field

Status

save_without_historical_record

Save model without saving a historical record

Make sure you know what you're doing before you use this method.

ProjectReviewStatusChoice (TimeStampedModel) django-model

A project review status choice is an option a user can choose when setting a project's status. Examples include Completed and Pending.

Attributes:

Name Type Description
name str

name of the status choice

created: AutoCreatedField django-field

created

modified: AutoLastModifiedField django-field

modified

name: CharField django-field

name

ProjectStatusChoice (TimeStampedModel) django-model

A project status choice indicates the status of the project. Examples include Active, Archived, and New.

Attributes:

Name Type Description
name str

name of project status choice

created: AutoCreatedField django-field

created

modified: AutoLastModifiedField django-field

modified

name: CharField django-field

name

ProjectUser (TimeStampedModel) django-model

A project user represents a user on the project.

Attributes:

Name Type Description
user User

represents the User object of the project user

project Project

links user to its project

role ProjectUserRoleChoice

links the project user role choice to the user

status ProjectUserStatusChoice

links the project user status choice to the user

enable_notifications bool

indicates whether or not the user should enable notifications

created: AutoCreatedField django-field

created

enable_notifications: BooleanField django-field

enable notifications

modified: AutoLastModifiedField django-field

modified

project: ForeignKey django-field

project

role: ForeignKey django-field

role

status: ForeignKey django-field

Status

user: ForeignKey django-field

user

save_without_historical_record

Save model without saving a historical record

Make sure you know what you're doing before you use this method.

ProjectUserMessage (TimeStampedModel) django-model

A project user message is a message sent to a user in a project.

Attributes:

Name Type Description
project Project

links the project the message is from to the message

author User

represents the user who authored the message

is_private bool

indicates whether or not the message is private

message str

text input from the user containing the message

author: ForeignKey django-field

author

created: AutoCreatedField django-field

created

is_private: BooleanField django-field

is private

message: TextField django-field

message

modified: AutoLastModifiedField django-field

modified

project: ForeignKey django-field

project

ProjectUserRoleChoice (TimeStampedModel) django-model

A project user role choice is an option a PI, manager, or admin has while selecting a user's role. Examples include Manager and User.

Attributes:

Name Type Description
name str

name of the user role choice

created: AutoCreatedField django-field

created

modified: AutoLastModifiedField django-field

modified

name: CharField django-field

name

ProjectUserStatusChoice (TimeStampedModel) django-model

A project user status choice indicates the status of a project user. Examples include Active, Pending, and Denied.

Attributes:

Name Type Description
name str

name of the project user status choice

created: AutoCreatedField django-field

created

modified: AutoLastModifiedField django-field

modified

name: CharField django-field

name