Listings #1

Open
opened 2025-11-05 16:16:09 -08:00 by jshiffer · 0 comments
Owner

A Listing is a post containing an item that is for sale or given away.

  • Listings need a title, description, and price ($0 by default).
  • Text fields should be capped at a reasonable length.
  • Listings may optionally have a location (text label + map coordinates) and condition (5 labels ranging from 'parts only' to 'excellent', which I took from Craigslist)
  • A Listing must refer back to the User that posted it. Eagerly fetch the User's name with every Listing so as to not incur the N+1 query problem.
  • Listings may have up to 10 images associated with them.
  • Verified users should be able to see the contact info of the User who posted a Listing.
  • We should be able to return a paginated list of Listings for the homepage, supporting filtering by the aforementioned attributes.
A Listing is a post containing an item that is for sale or given away. - [x] Listings need a title, description, and price ($0 by default). - [x] Text fields should be capped at a reasonable length. - [x] Listings may optionally have a location (text label + map coordinates) and condition (5 labels ranging from 'parts only' to 'excellent', which I took from Craigslist) - [x] A Listing must refer back to the User that posted it. Eagerly fetch the User's name with every Listing so as to not incur the N+1 query problem. - [ ] Listings may have up to 10 images associated with them. - [ ] Verified users should be able to see the contact info of the User who posted a Listing. - [ ] We should be able to return a paginated list of Listings for the homepage, supporting filtering by the aforementioned attributes.
jshiffer added this to the Models project 2025-11-06 11:31:03 -08:00
jshiffer moved this to In Progress in Models on 2025-11-06 11:31:16 -08:00
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: ewasters/ewaste-backend#1