27 lines
1,010 B
Markdown
27 lines
1,010 B
Markdown
# Task: Review System (Dedicated Model)
|
|
|
|
## Objective
|
|
|
|
Implement a dedicated **Review** system, distinct from Comments. Reviews allow users to share their opinion with a rating, a "one-liner" blurb, and full text.
|
|
|
|
## Steps
|
|
|
|
- [x] **Backend**:
|
|
- [x] Create `Review` model in `models.py`:
|
|
- `blurb`: str (The one-liner/pullquote).
|
|
- `content`: str (Full review text).
|
|
- `score`: int (1-10 rating).
|
|
- Foreign keys to User, Show, Venue, Song.
|
|
- [x] Create `Review` schemas in `schemas.py`.
|
|
- [x] Create `routers/reviews.py` for CRUD operations.
|
|
- [x] Generate and apply migrations.
|
|
- [x] **Frontend**:
|
|
- [x] Create `ReviewCard` component (displaying Blurb prominently).
|
|
- [x] Create `ReviewForm` component (inputs for Blurb, Content, Rating).
|
|
- [x] Integrate into Show Detail page (separate tab or section from Comments).
|
|
|
|
## Acceptance Criteria
|
|
|
|
- User can submit a Review with a blurb.
|
|
- Reviews are displayed with the blurb highlighted.
|
|
- Comments remain separate for discussion.
|