我有一个应用程序,显示"问题"的列表。主urls.py文件发送/发出/发送到"中的urls.py文件"应用
urlpatterns = [
path('', RedirectView.as_view(url='/issues/')),
path('admin/', admin.site.urls),
path('issues/', include('issues.urls')),
]
在app app的urls.py文件中,我有:
path('', views.IssueListView.as_view(), name='issue-list'),
调用IssueListView,它是一个通用的ListView视图:
class IssueListView(generic.ListView):
model = Issue
现在,我想添加一个带有链接的侧边栏菜单,用户可以点击这些链接按类别对问题列表进行排序。我理解我可以重写IssueListView的get_queryset()方法来接受一个kwarg,只是加载所有问题,如果缺少kwarg(用if语句检查kwarg的存在,对吧?),但我我想要做到这一点我需要有两个urlpatterns指向相同的视图,如:
path('', views.IssueListView.as_view(), name='issue-list'),
path('<category>', views.IssueListView.as_view(), name='issue-category-list'),
但我想知道这是否是正常的&#34; Django方式&#34;这样做。
谢谢。
答案 0 :(得分:1)
如果您已指定,则可以对url pattern
使用相同的视图。这没有错。
path('', views.IssueListView.as_view(), name='issue-list'),
path('<category>', views.IssueListView.as_view(), name='issue-category-list'),