github-samples / github-samples/pets-workshop
full-day workshop: Include the page data owner in the filter exercise
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Python
- Sterne
- 80
- Forks
- 161
- Ø Merge
- 31 Min.
- Gemergte PRs (30 T.)
- 1
Beschreibung
Problem
Step 6 says filtering requires the Flask backend, tests, and Astro frontend, but tells learners to supply only:
app/server/app.pyapp/server/test_app.pyapp/client/src/components/DogList.astro
app/client/src/pages/index.astro owns the /api/dogs request, reads URL query parameters, and renders pagination. DogList.astro only renders the dogs prop. Omitting the page owner encourages a partial implementation that cannot reliably connect controls to server-side query parameters or preserve pagination behavior.
Suggested change
Include index.astro in the prescribed context and add implementation-agnostic behavior checks.
Acceptance criteria
- Step 6 includes
app/client/src/pages/index.astroin Copilot context. - The prompt requirements describe how control changes reach the API.
- Breed-only, availability-only, and combined filtering are validated.
- Clearing filters restores the full list.
- Filter changes handle the current page deliberately, such as resetting to page 1.
- Updated unit tests prove endpoint filtering rather than only the original response shape.
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit den Workshop-Anweisungen zu Step 6 und untersuche app/server/app.py, app/server/test_app.py, app/client/src/pages/index.astro und app/client/src/components/DogList.astro. Aktualisiere die vorgegebenen Anforderungen an Kontext und Verhalten, sodass das API-verbundene Filtern, Leeren und die Seitenverwaltung ausdrücklich festgelegt sind, und führe anschließend die aktualisierten Unit-Tests aus, um die Endpunktfilterung für die Fälle nur nach Rasse, nur nach Verfügbarkeit und kombiniert zu überprüfen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- flask, python
- Bereich
- documentation, testing
- Issue-Typ
- Dokumentation
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Aktiv
- Klarheit
- Klar beschrieben
- Anfängerfreundlichkeit
- 78/100