Fix ImproperlyConfigured for drink-detail in scrobbles API

HyperlinkedModelSerializer could not resolve drink-detail because no
API ViewSet existed for the Drink model, even though the template URL
existed in drinks/urls.py.

Fix:
- Add DrinkSerializer and DrinkViewSet to drinks/api/
- Register DrinkViewSet as 'drinks' in the DRF router (vrobbler/urls.py)
- Mark task 8f2a3b4c as DONE in PROJECT.org

GET /api/v1/scrobbles/ now resolves without error.
This commit is contained in:
2026-07-23 20:26:39 -04:00
parent d004336dd3
commit 428d84d3bf
4 changed files with 32 additions and 24 deletions

View File

@ -4,6 +4,7 @@ from drinks.models import (
BeerStyle,
Coffee,
CoffeeRoaster,
Drink,
Wine,
WineGrape,
WineProducer,
@ -64,3 +65,9 @@ class CoffeeRoasterSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = CoffeeRoaster
fields = "__all__"
class DrinkSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Drink
fields = "__all__"

View File

@ -55,3 +55,9 @@ class CoffeeRoasterViewSet(viewsets.ModelViewSet):
queryset = models.CoffeeRoaster.objects.all().order_by("-created")
serializer_class = serializers.CoffeeRoasterSerializer
permission_classes = [permissions.IsAuthenticated]
class DrinkViewSet(viewsets.ModelViewSet):
queryset = models.Drink.objects.all().order_by("-created")
serializer_class = serializers.DrinkSerializer
permission_classes = [permissions.IsAuthenticated]

View File

@ -31,6 +31,7 @@ from vrobbler.apps.drinks.api.views import (
BeerViewSet,
CoffeeRoasterViewSet,
CoffeeViewSet,
DrinkViewSet,
WineGrapeViewSet,
WineProducerViewSet,
WineRegionViewSet,
@ -135,6 +136,7 @@ router.register(r"wine-regions", WineRegionViewSet)
router.register(r"wine-grapes", WineGrapeViewSet)
router.register(r"coffees", CoffeeViewSet)
router.register(r"coffee-roasters", CoffeeRoasterViewSet)
router.register(r"drinks", DrinkViewSet)
router.register(r"boardgames", BoardGameViewSet)
router.register(r"boardgame-designers", BoardGameDesignerViewSet)
router.register(r"boardgame-publishers", BoardGamePublisherViewSet)