我的查询集目前是我视图中posts
的值。但是,当用户导航到Post.objects.all().filter(category=category).order_by('-date')
网址时,我想将我的查询集更改为new
。这是我的代码:
网址
url(r'^$', boxes_view, name='home'),
url(r'^new/$', boxes_view, name='new'),
视图
def boxes_view(request):
...
posts = Post.objects.all().filter(category=category).annotate(score_diff=F('score__upvotes') - F('score__downvotes')).order_by('-score_diff')
模板
...
<button id="sort_new"><a href="{% url 'new' %}">New</a></button>
在浏览posts
网址时是否可以更改new
的值?
答案 0 :(得分:4)
我真的不明白你想要做什么。但是你可以将一个参数从urls.py传递给视图:
url(r'^$', boxes_view, {'order': '-score_diff'}, name='home'),
url(r'^new/$', boxes_view, {'order': '-date'}, name='new'),
def boxes_view(request, order):
...
posts = Post.objects.all()...order_by(order)