urls.py 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. # mysite/urls.py
  2. from django.urls import path
  3. from django.contrib.auth.views import LoginView, LogoutView
  4. from . import views
  5. app_name = 'mysite'
  6. urlpatterns = [
  7. # Главная страница
  8. path('', views.SongListView.as_view(), name='song_list'),
  9. path('register/', views.register, name='register'),
  10. # Авторизация
  11. path('login/', LoginView.as_view(template_name='mysite/login.html'), name='login'),
  12. path('logout/', LogoutView.as_view(next_page='mysite:login'), name='logout'),
  13. # Исполнители
  14. path('musicians/', views.MusicianListView.as_view(), name='musician_list'),
  15. path('musicians/create/', views.MusicianCreateView.as_view(), name='musician_create'),
  16. path('musicians/<int:pk>/update/', views.MusicianUpdateView.as_view(), name='musician_update'),
  17. path('musicians/<int:pk>/delete/', views.MusicianDeleteView.as_view(), name='musician_delete'),
  18. # Песни
  19. path('songs/', views.SongListDataView.as_view(), name='song_list_data'),
  20. path('songs/create/', views.SongCreateView.as_view(), name='song_create'),
  21. path('songs/<int:pk>/update/', views.SongUpdateView.as_view(), name='song_update'),
  22. path('songs/<int:pk>/delete/', views.SongDeleteView.as_view(), name='song_delete'),
  23. # Меломанцы
  24. path('melomans/', views.MelomanListView.as_view(), name='meloman_list'),
  25. path('profile/', views.MelomanProfileView.as_view(), name='profile'),
  26. path('rate/<int:song_id>/', views.rate_song, name='rate_song'),
  27. path('recommendations/', views.RecommendationsView.as_view(), name='recommendations'),
  28. path('song-details/', views.SongDetailsView.as_view(), name='song_details'),
  29. ]