0

我试图找到一种方法将 django 默认更改?page=1?side=1,或者更好,/side/1

这是我的列表视图:

class EntryListView(ListView):
    context_object_name = "news_list"
    paginate_by = 18
    queryset = Entry.published.all().order_by('-start_publication') 

我试过这样:

urlpatterns = patterns('',
    url(r'^/side/(?P<page>\d+)/$', 'news.views.EntryListView'),
    url(r'^$', EntryListView.as_view(), name="news"),
)

但这不起作用。

4

1 回答 1

0

要更改?page=1?side=1您可以将page_kwarg属性添加到您的类。

class EntryListView(ListView):
    context_object_name = "news_list"
    paginate_by = 18
    queryset = Entry.published.all().order_by('-start_publication')
    page_kwarg = 'side'

没有理由在/side/1/不覆盖 的情况下与您的 URL 模式不匹配page_kwarg,也许您在测试时错过了尾部斜杠?

于 2014-03-12T11:27:47.237 回答