generated from hackforla/.github-hackforla-base-repo-template
-
-
Couldn't load subscription status.
- Fork 33
Closed
Labels
PII: FALSETable or function does not have or use Personally Identifiable Information (PII)Table or function does not have or use Personally Identifiable Information (PII)complexity: missingfeature: table creationp-feature: projectsproject and projectsproject and projectsrole: back ends: CTJstakeholder: Civic Tech Jobsstakeholder: Civic Tech Jobss: VRMSstakeholder: VRMSstakeholder: VRMSs: hackforla.orgstakeholder: hackforla.org websitestakeholder: hackforla.org websitesize: 2ptCan be done in 7-12 hoursCan be done in 7-12 hours
Milestone
Description
Overview
We need to create the Project table so that we can update a shared data store across hackforla.org, vrms, civictechjobs, and tables (onboarding) project.
Details
A table and a model are the same thing
Action Items
- identify if table has a description (see spreadsheet under Resources)
- if not, reach out to PD leads
- identify and document (below) what other tables are associated (see ERD under Resources)
- create a single model in Django (defining schema)
- Write a test for the relationships this model will have with other models (e.g., creating a user and assigning them a set of permissions on a project). - no relationships yet
- Write an API end point
- write API unit tests
- Document the endpoint in Swagger
Resources/Instructions
- See People Depot Resources wiki page for links
Items to document (referenced above)
Description
- List of projects
Data Fields
-
Copied from spreadsheet and checked off according to ERD. Data fields are bolded and relation fields are not.
- (PK) id - Int - Record Id
- name - String
- description - String
- created_at - timestamp
- updated_at - timestamp
- completed_at - timestamp
- github_org_id - char(8) - Record Id
- github_primary_repo_id - char(9) - Record Id
- github_primary_url - varchar()
- (FK) current_status - Int (status ID)
- hide - Boolean
- (FK) location - Int (location ID)
- slack_url - URLString
- google_drive_url - URLString
- google_drive_id - char(?) - Record Id
- hfla_website_url - stringurl
- leads - int[] (user_id)
- (FK) leadership_type - int (leadershipType id)
- image_logo - UrlString - 600x400 image for the project cards
- image_hero - UrlString - Image that appears on the project page
- image_icon - UrlString - tiny square image for linking to the project from other sites
- readme_url - url varchar
- wiki_url - url varchar
-
In ERD only - None
Associated Tables
-
Copied from spreadsheet and checked off according to ERD
- accomplishment (one-to-many)
- cancelled_event (one-to-many)
- event (one-to-many)
- event_history (one-to-many)
- faq_viewed (one-to-many)
- permission (one-to-many)
- permission_history (one-to-many)
- project_language_xref (one-to-many)
- project_partner_xref (one-to-many)
- project_program_area_xref (one-to-many)
- project_sdg_xref (one-to-many)
- project_status_history (one-to-many)
- project_technology_xref (one-to-many)
- project_url (one-to-many)
- recurring_event (one-to-many)
- user_check (one-to-many) - Missing line in ERD
- leadership_type (many-to-one)
- location (many-to-one)
- project_status (many-to-one)
- win (many-to-many array of IDs)
-
In ERD only - None
Swagger Endpoint Link
Metadata
Metadata
Assignees
Labels
PII: FALSETable or function does not have or use Personally Identifiable Information (PII)Table or function does not have or use Personally Identifiable Information (PII)complexity: missingfeature: table creationp-feature: projectsproject and projectsproject and projectsrole: back ends: CTJstakeholder: Civic Tech Jobsstakeholder: Civic Tech Jobss: VRMSstakeholder: VRMSstakeholder: VRMSs: hackforla.orgstakeholder: hackforla.org websitestakeholder: hackforla.org websitesize: 2ptCan be done in 7-12 hoursCan be done in 7-12 hours
Type
Projects
Status
✅Done