Django/DRF + PostgreSQL/Redis/Celery backend with accounts, library, moments, and notifications apps; React/TypeScript/Vite frontend with Instagram-style sidebar nav, feed, profiles, nested comment replies, notifications, and photo/video upload with ffmpeg-generated posters. Co-Authored-By: Claude Sonnet 5 <[email protected]>
21 lines
1.1 KiB
Python
21 lines
1.1 KiB
Python
from django.urls import path
|
|
from rest_framework.routers import DefaultRouter
|
|
|
|
from .views import AlbumCollaboratorViewSet, AlbumItemViewSet, AlbumViewSet, LibraryItemViewSet
|
|
|
|
router = DefaultRouter()
|
|
router.register("items", LibraryItemViewSet, basename="library-item")
|
|
router.register("albums", AlbumViewSet, basename="album")
|
|
|
|
album_items_list = AlbumItemViewSet.as_view({"get": "list", "post": "create"})
|
|
album_items_detail = AlbumItemViewSet.as_view({"get": "retrieve", "delete": "destroy"})
|
|
album_collaborators_list = AlbumCollaboratorViewSet.as_view({"get": "list", "post": "create"})
|
|
album_collaborators_detail = AlbumCollaboratorViewSet.as_view({"get": "retrieve", "delete": "destroy"})
|
|
|
|
urlpatterns = [
|
|
path("albums/<int:album_pk>/items/", album_items_list, name="album-items-list"),
|
|
path("albums/<int:album_pk>/items/<int:pk>/", album_items_detail, name="album-items-detail"),
|
|
path("albums/<int:album_pk>/collaborators/", album_collaborators_list, name="album-collaborators-list"),
|
|
path("albums/<int:album_pk>/collaborators/<int:pk>/", album_collaborators_detail, name="album-collaborators-detail"),
|
|
] + router.urls
|