Skip to content

Create Table: Accomplishment #48

Open
@fyliu

Description

@fyliu

Overview

We need to create the accomplishment 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 and document table description (see spreadsheet under Resources)
    • if not, reach out to PD leads
  • compare and check off the data fields (below) against the ERD. Note any fields in the ERD that's missing from the list. (see Resources)
  • compare the check off associated tables (below) against the ERD. Note any associated tables in the ERD that's missing from the list (see 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).
  • write an API end point
  • write API unit tests
  • add extra validation code to the serializer
  • write tests for the validation
  • document the endpoint
  • Check to see if open issues in FK status below
    • If all Issues listed are closed (or there are no FKs), then skip the next 3 steps
      • comment out the code after you create it (see FK Status below for open/closed state)
      • add an action item on the open issue to uncomment the code line you commented out when that issue's table is created.
      • Provide your file and line number as a permalink under resources in that issue

Resources/Instructions

Description

List of Accomplishments associated with a project

Data Fields

  • Copied from spreadsheet and confirmed according to ERD
Name Type FK Table FK table Issue(s)
project_id int - Record Id Project #16
title varchar
description varchar
url url varchar
created timestamp
updated timestamp
accomplished_on date
  • In ERD only (having items here indicates a mismatch, which requires a review)
    • None

FK status

Associated Tables

  1. Copied from spreadsheet and checked off according to ERD. (unchecked items indicate a mismatch between ERD and spreadsheet, which requires a review)

    • project (many-to-one)
  2. In ERD only (having items here indicates a mismatch, which requires a review)

    • None

Custom Validation

The project_id field can be null.

  1. If project_id is null, the url field must be filled
  2. If the project_id is not null, the url field can still be filled if there's an alternative web page for the specific accomplishment

Metadata

Metadata

Type

No type

Projects

Status

🏗In progress-actively working

Relationships

None yet

Development

No branches or pull requests

Issue actions