在Django中获取没有参数的当前URL

时间:2018-02-13 14:17:53

标签: python django python-3.x django-views

我有一个如下网址:

url(r'^board/(?P<pk>\d+)$', board_crud, name='board_update'),

我想获得当前的观点&#39; board&#39;没有参数,所以我可以重定向到它。

我想在同一视图中重定向到当前视图(没有参数)(使用参数)。

先谢谢。

1 个答案:

答案 0 :(得分:1)

我相信你想做这样的事情:

<强> urls.py

url(r'^board/$', board_redirect, name='board_redirect'),
url(r'^board/(?P<pk>\d+)/$', board_crud, name='board_update'),
  

PS:注意结尾/,总是结束网址是个好主意   具有正斜杠的模式,以保持一致性(除了你的情况除外)   返回一个类似sitemap.xml的网址。)

然后,你需要创建一个这样的视图:

<强> views.py

from django.shortcuts import redirect
from .models import Foo

def board_redirect(request):
    latest = Foo.objects.values('pk').order_by('-date').first()
    return redirect('board_update', pk=latest['pk'])

查询集将定义您要实现的逻辑。我没有关于您的申请的更多信息。在此示例中,您始终会根据“日期”字段显示“最新”对象。希望它有意义。