Django我可以不传递任何参数而反转参数化的url吗?

问题描述

app_name = 'app_name'
path('url/<uuid:uuid>',someview.as_view(),name='somename')

def get_url():
   return reverse('app_name:somename',args=None)

我希望get_url返回'url /' 有可能吗?

如果没有,我可以以某种方式获取不带'url / '这样的参数的部分url吗?

解决方法

您可以使用名称相同但参数不同的多个路径。

app_name = 'app_name'

urlpatterns = [
    path('url/',someview.as_view(),name='somename'),path('url/<str:foo>/',]

使用reverse时,将返回与您传递的名称和参数相匹配的网址格式

reverse('app_name:somename',kwargs={'foo': 'bar'})  # /url/bar/
reverse('app_name:somename')  # /url/

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...