hackforla / hackforla/peopledepot

Create Table: ProjectLeadsXref

Open
#712 0 comments 0 reactions 0 assignees View on GitHub
complexity: missing draft feature: table creation milestone: missing role: back end s: CTJ s: hackforla.org s: kb s: tables s: VRMS size: 2pt
Dominant language
Python
Stars
14
Forks
37
Avg merge
9d 15h
Merged PRs (30d)
5

Description

### Overview

We need to create the ProjectLeadsXref table to support many-to-many relationship between Project and User (specifically the project leads).

#### 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
- [ ] 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 project and assigning users as project leads).
- [ ] Write an API end point
- [ ] Write API unit tests
- [ ] Document the endpoint in Swagger

### Resources/Instructions

- See [People Depot Resources wiki page](https://github.com/hackforla/peopledepot/wiki/Resources-and-Links) for links
- ERD
- Table and Field Definitions
- API Endpoint
- See [this Wiki page](https://github.com/hackforla/peopledepot/wiki/Create-Table-issues-data-gathering-workflow) for instructions on the data-gathering workflow for Create Table issues

### Items to document (referenced above)

- Confirm the table description and relationships against the spreadsheet and ERD.

#### Description

- Cross-reference table associating projects with their project leads.

### Data Fields

| Name | Type | FK Table | FK Table Issue(s) |
| ---- | ---- | -------- | ----------------- |
| project | int | Project | #16 |
| lead | int | User | #15 |

### FK status

- #16 - closed
- #15 - closed

Contributor guide

Open the contributing guide

Research direction

Start with the People Depot Resources wiki, especially the ERD, table and field definitions, and API endpoint guidance, then review the data-gathering workflow. Confirm the ProjectLeadsXref description and relationships, create the Django model, and add relationship tests, an API endpoint, API unit tests, and Swagger documentation.

Written by the indexing model from the issue text.

Assessment

Tech stack
django, python
Domain
api, backend, database, documentation, testing
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.