在views.py中获取url - python django
Posted
技术标签:
【中文标题】在views.py中获取url - python django【英文标题】:Get urls in views.py - python django 【发布时间】:2016-04-03 10:26:03 【问题描述】:我的 urls.py
url(r'^ACB/(?P<slug>.*)/$', views.ACB.as_view(), name='ACB'),
我有一个要求,我需要将这个 url 发送到几个随机 slug 作为 API 响应的一部分
我不想要请求的url,而是不同视图的url
【问题讨论】:
你的问题是什么? 这不是很清楚。您想要ACB
视图中的请求网址吗?
更新了问题
【参考方案1】:
使用reverse
from django.core.urlresolvers import reverse
my_url = reverse('ACB')
这将在没有任何参数的情况下反转 ACB
url。如果存在 slug,您可以将其传递给 args
:
my_url = reverse('ACB', args=(slug,))
https://docs.djangoproject.com/en/1.9/ref/urlresolvers/#reverse
【讨论】:
如果存在,我会用my_url = reverse('ACB', args=(slug, ))
更新它,因为 slug 是一个可选参数。
你能得到 OP 想要的东西真是太神奇了。我仍然无法理解他的问题。【参考方案2】:
2021 年更新(Django 2.0+)
在 Django 2.0 中,模块 django.core.urlresolvers
已移至 django.urls
。
问题的新解决方案:
from django.urls import reverse
my_url = reverse('ACB')
my_url = reverse('ACB', args=(slug,))
有关详细信息,请参阅:
ImportError: No module named 'django.core.urlresolvers' https://docs.djangoproject.com/en/3.2/releases/1.9/#features-deprecated-in-1-9【讨论】:
以上是关于在views.py中获取url - python django的主要内容,如果未能解决你的问题,请参考以下文章
当我们可以通过在urls.py中的views.py和urls中添加视图时,是否需要在ModelAdmin类的管理页面中添加自定义视图?