hackforla / hackforla/peopledepot

Create Table: UserPracticeAreaTargetIntakeXref

Open
#711 0 comments 0 reactions 1 assignee Claimed by @amdbouka View on GitHub
complexity: small feature: table creation ready for prioritization 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 UserPracticeAreaTargetIntakeXref table to support many-to-many relationship between User and PracticeArea.

#### 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 user and assigning them a set of permissions on a project).
- [ ] 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 users with their target practice areas collected during intake.

### Data Fields

| Name | Type | FK Table | FK Table Issue(s) |
| ---- | ---- | -------- | ----------------- |
| user | int | User | #15 |
| practice_area | int | PracticeArea | #63 |

### FK status

- #15 - closed
- #63 - closed

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.