Browse Source

urls order fixed.

master
Mohsen Taba 5 months ago
parent
commit
6dc9a16110
  1. 40
      apps/hadis/urls.py
  2. 2
      apps/hadis/views/category.py

40
apps/hadis/urls.py

@ -7,29 +7,39 @@ from .views.info import HadisInfoView
urlpatterns = [
# Most specific first (with parameters)
path('collections/', HadisCollectionListView.as_view(), name='hadis-collection-list'),
path('sync/sects/', HadisCategorySectListView.as_view(), name='hadis-sect-list'),
path('sync/categories/tree/', HadisCategoryTreeView.as_view(), name='hadis-category-tree'),
path('categories/tree/', HadisCategoryTreeNormalView.as_view(), name='hadis-category-tree-normal'),
path('sync/hadis/', HadisSyncView.as_view(), name='hadis-sync'),
path('sync/narrators/', TransmitterSyncView.as_view(), name='transmitter-sync'),
path('sync/references/', BookReferenceSyncView.as_view(), name='reference-sync'),
path('info/', HadisInfoView.as_view(), name='hadis-info'),
# Category paths (more specific first)
path('categories/tree/', HadisCategoryTreeNormalView.as_view(), name='hadis-category-tree-normal'),
path('categories/<str:sect_type>/<str:slug>/<str:source_type>/', HadisCategorySelectBySectSourceView.as_view(), name='categories-tree-by-sect-source'),
path('categories/<str:sect_type>/<str:slug>/', HadisCategorySelectBySectView.as_view(), name='categories-tree-by-sect'),
path('categories/<str:sect_type>/', CategoriesBySectView.as_view(), name='categories-by-sect'),
path('categories/', CategoriesView.as_view(), name='categories'), # ← Least specific LAST
# Hadis paths
path('category/<int:category_id>/', HadisListView.as_view(), name='hadis-list'),
path('arguments/',HadisMainListView.as_view(), name='hadis-main-list'),
path('<str:hadis_slug>/', HadisBasicView.as_view(), name='hadis-basic'),
path('arguments/', HadisMainListView.as_view(), name='hadis-main-list'),
# Hadis detail paths (with slug, more specific)
path('<str:hadis_slug>/detail/', HadisDetailView.as_view(), name='hadis-detail'),
path('<str:hadis_slug>/transmitters/', HadisTransmittersView.as_view(), name='hadis-transmitters'),
path('<str:hadis_slug>/corrections/', HadisCorrectionsView.as_view(), name='hadis-corrections'),
path('categories/<str:sect_type>/<str:slug>/<str:source_type>/', HadisCategorySelectBySectSourceView.as_view(), name='categories-tree-by-sect-source'),
path('categories/<str:sect_type>/<str:slug>/', HadisCategorySelectBySectView.as_view(), name='categories-tree-by-sect'),
path('categories/<str:sect_type>/', CategoriesBySectView.as_view(), name='categories-by-sect'),
path('categories/', CategoriesView.as_view(), name='categories'),
path('narrators/',TransmitterView.as_view(), name='narrators'),
path('narrators/<str:narrator_slug>',TransmitterDetailView.as_view(), name='narrator-detail'),
path('narrators/<str:narrator_slug>/opinions',TransmitterOpinionView.as_view(), name='narrator-opinions'),
path('narrators/<str:narrator_slug>/original_texts',TransmitterOriginalTextView.as_view(), name='narrator-original-texts'),
path('references/',BookReferencesView.as_view(), name='references'),
path('references/<str:reference_slug>',BookDetailView.as_view(), name='reference-detail'),
path('references/attributes/',BookAttributeView.as_view(), name='book-attributes'),
]
path('<str:hadis_slug>/', HadisBasicView.as_view(), name='hadis-basic'), # ← Least specific LAST
# Narrator paths
path('narrators/<str:narrator_slug>/opinions', TransmitterOpinionView.as_view(), name='narrator-opinions'),
path('narrators/<str:narrator_slug>/original_texts', TransmitterOriginalTextView.as_view(), name='narrator-original-texts'),
path('narrators/<str:narrator_slug>', TransmitterDetailView.as_view(), name='narrator-detail'),
path('narrators/', TransmitterView.as_view(), name='narrators'),
# Reference paths
path('references/<str:reference_slug>', BookDetailView.as_view(), name='reference-detail'),
path('references/', BookReferencesView.as_view(), name='references'),
]

2
apps/hadis/views/category.py

@ -4,7 +4,7 @@ from django.shortcuts import get_object_or_404
from utils.pagination import NoPagination
from django.db.models import Q
from ..models import HadisSect, HadisCategory
from ..models import HadisSect, HadisCategory,Hadis
from ..serializers import (
HadisCategorySectListSerializer,
HadisCategoryTreeSerializer,

Loading…
Cancel
Save