Django是否有必要在url模板标签中命名url?
以下url示例在文档中给出:
('^client/([0-9]+)/$', 'app_views.client', name='app-views-client')
可以在这样的模板中使用:
{% url 'app-views-client' client.id %}
但是有没有办法通过路径而不是名称来反转视图?有一种方法在1.8中被弃用,将在Django 2.0中删除,如下所示:
{% url 'path.to.some_view' v1 %}
在1.8及更高版本中,还有一种方法可以在没有命名的情况下反转视图吗?
答案 0 :(得分:3)
如果您想要向前兼容,则必须使用已命名的网址。
deprecation timeline for version 2州:
将删除使用虚线Python路径反转()URL的功能。
在内部,url标记使用reverse,因此它将受到相同的弃用。这在docs for the url tag。
的末尾提到如果您想要按路径反转,可以查看the source for how it's done now并手动复制。但是,决定取消这种能力可能是一个很好的理由。