diff --git a/vrobbler/apps/books/api/views.py b/vrobbler/apps/books/api/views.py index 1f1a261..775bfd8 100644 --- a/vrobbler/apps/books/api/views.py +++ b/vrobbler/apps/books/api/views.py @@ -1,19 +1,16 @@ from rest_framework import permissions, viewsets -from books.api.serializers import ( - AuthorSerializer, - BookSerializer, -) -from books.models import Author, Book +from books.api import serializers +from books import models class AuthorViewSet(viewsets.ModelViewSet): - queryset = Author.objects.all().order_by("-created") - serializer_class = AuthorSerializer + queryset = models.Author.objects.all().order_by("-created") + serializer_class = serializers.AuthorSerializer permission_classes = [permissions.IsAuthenticated] class BookViewSet(viewsets.ModelViewSet): - queryset = Book.objects.all().order_by("-created") - serializer_class = BookSerializer + queryset = models.Book.objects.all().order_by("-created") + serializer_class = serializers.BookSerializer permission_classes = [permissions.IsAuthenticated] diff --git a/vrobbler/apps/lifeevents/api/serializers.py b/vrobbler/apps/lifeevents/api/serializers.py new file mode 100644 index 0000000..0caeadc --- /dev/null +++ b/vrobbler/apps/lifeevents/api/serializers.py @@ -0,0 +1,8 @@ +from lifeevents.models import LifeEvent +from rest_framework import serializers + + +class LifeEventSerializer(serializers.HyperlinkedModelSerializer): + class Meta: + model = LifeEvent + fields = "__all__" diff --git a/vrobbler/apps/lifeevents/api/views.py b/vrobbler/apps/lifeevents/api/views.py new file mode 100644 index 0000000..1540b21 --- /dev/null +++ b/vrobbler/apps/lifeevents/api/views.py @@ -0,0 +1,10 @@ +from rest_framework import permissions, viewsets + +from lifeevents.api import serializers +from lifeevents import models + + +class LifeEventViewSet(viewsets.ModelViewSet): + queryset = models.LifeEvent.objects.all().order_by("-created") + serializer_class = serializers.LifeEventSerializer + permission_classes = [permissions.IsAuthenticated] diff --git a/vrobbler/apps/trails/api/serializers.py b/vrobbler/apps/trails/api/serializers.py new file mode 100644 index 0000000..96a427d --- /dev/null +++ b/vrobbler/apps/trails/api/serializers.py @@ -0,0 +1,8 @@ +from trails import models +from rest_framework import serializers + + +class TrailSerializer(serializers.HyperlinkedModelSerializer): + class Meta: + model = models.Trail + fields = "__all__" diff --git a/vrobbler/apps/trails/api/views.py b/vrobbler/apps/trails/api/views.py new file mode 100644 index 0000000..f93b487 --- /dev/null +++ b/vrobbler/apps/trails/api/views.py @@ -0,0 +1,11 @@ + +from rest_framework import permissions, viewsets + +from trails.api import serializers +from trails import models + + +class TrailViewSet(viewsets.ModelViewSet): + queryset = models.Trail.objects.all().order_by("-created") + serializer_class = serializers.TrailSerializer + permission_classes = [permissions.IsAuthenticated] diff --git a/vrobbler/urls.py b/vrobbler/urls.py index 66fc4f8..2107f32 100644 --- a/vrobbler/urls.py +++ b/vrobbler/urls.py @@ -4,25 +4,35 @@ from oauth2_provider import urls as oauth2_urls from rest_framework import routers import vrobbler.apps.scrobbles.views as scrobbles_views + from vrobbler.apps.boardgames import urls as boardgame_urls from vrobbler.apps.boardgames.api.views import BoardGameViewSet, BoardGameDesignerViewSet, BoardGamePublisherViewSet, BoardGameLocationViewSet + from vrobbler.apps.books import urls as book_urls from vrobbler.apps.books.api.views import AuthorViewSet, BookViewSet -from vrobbler.apps.bricksets import urls as bricksets_urls + from vrobbler.apps.lifeevents import urls as lifeevents_urls +from vrobbler.apps.lifeevents.api.views import LifeEventViewSet + from vrobbler.apps.locations import urls as locations_urls from vrobbler.apps.locations.api.views import GeoLocationViewSet + from vrobbler.apps.moods import urls as moods_urls from vrobbler.apps.moods.api.views import MoodViewSet + +from vrobbler.apps.foods import urls as foods_urls +from vrobbler.apps.foods.api.views import FoodViewSet, FoodCategoryViewSet + from vrobbler.apps.music import urls as music_urls from vrobbler.apps.music.api.views import ( AlbumViewSet, ArtistViewSet, TrackViewSet, ) + from vrobbler.apps.podcasts import urls as podcast_urls from vrobbler.apps.podcasts.api.views import ProducerViewSet, PodcastViewSet, PodcastEpisodeViewSet -from vrobbler.apps.profiles.api.views import UserProfileViewSet, UserViewSet + from vrobbler.apps.scrobbles import urls as scrobble_urls from vrobbler.apps.scrobbles.api.views import ( AudioScrobblerTSVImportViewSet, @@ -30,6 +40,7 @@ from vrobbler.apps.scrobbles.api.views import ( LastFmImportViewSet, ScrobbleViewSet, ) + from vrobbler.apps.sports import urls as sports_urls from vrobbler.apps.sports.api.views import ( LeagueViewSet, @@ -41,20 +52,28 @@ from vrobbler.apps.sports.api.views import ( ) from vrobbler.apps.tasks import urls as tasks_urls from vrobbler.apps.tasks.api.views import TaskViewSet + from vrobbler.apps.profiles import urls as profiles_urls +from vrobbler.apps.profiles.api.views import UserProfileViewSet, UserViewSet + from vrobbler.apps.trails import urls as trails_urls +from vrobbler.apps.trails.api.views import TrailViewSet + from vrobbler.apps.beers import urls as beers_urls from vrobbler.apps.beers.api.views import BeerViewSet, BeerProducerViewSet, BeerStyleViewSet -from vrobbler.apps.foods import urls as foods_urls -from vrobbler.apps.foods.api.views import FoodViewSet + from vrobbler.apps.puzzles import urls as puzzles_urls from vrobbler.apps.puzzles.api.views import PuzzleViewSet, PuzzleManufacturerViewSet from vrobbler.apps.videogames import urls as videogame_urls + from vrobbler.apps.videos import urls as video_urls from vrobbler.apps.videos.api.views import SeriesViewSet, VideoViewSet + +from vrobbler.apps.bricksets import urls as bricksets_urls +from vrobbler.apps.bricksets.api.views import BrickSetViewSet + from vrobbler.apps.webpages import urls as webpages_urls from vrobbler.apps.webpages.api.views import DomainViewSet, WebPageViewSet -from vrobbler.apps.bricksets.api.views import BrickSetViewSet # from vrobbler.apps.modern_ui import urls as modern_ui_urls @@ -97,6 +116,7 @@ router.register(r"podcasts", PodcastViewSet) router.register(r"puzzle-manufacturers", PuzzleManufacturerViewSet) router.register(r"puzzles", PuzzleViewSet) router.register(r"bricksets", BrickSetViewSet) +router.register(r"lifeevents", LifeEventViewSet) urlpatterns = [ path("api/v1/", include(router.urls)),