Django Jinja:使用{%url%}标记或显式定义url是更好的做法吗?

Django Jinja:使用{%url%}标记或显式定义url是更好的做法吗?,django,jinja2,Django,Jinja2,假设您在Django中有一个论坛应用程序,名称空间为论坛,主页名称为主页,您想创建一个,还是执行更好?或者这不要紧吗?{%url%}标记存在以供使用-它不是免费的 如果您移动视图,手动修复所有模板代码以指向新视图是一件痛苦的事情。{%url%}标记存在以供使用-它不是免费的 如果移动视图,手动修复所有模板代码以指向新视图是一件痛苦的事情。 {%url%}标记将始终指向规范url。在您的示例中,当遵循常见的Django约定时,第二种形式将导致从/forums到/forums/的不必要重定向 {%u

假设您在Django中有一个论坛应用程序,名称空间为
论坛
,主页名称为
主页
,您想创建一个
,还是执行
更好?或者这不要紧吗?

{%url%}
标记存在以供使用-它不是免费的


如果您移动视图,手动修复所有模板代码以指向新视图是一件痛苦的事情。

{%url%}
标记存在以供使用-它不是免费的

如果移动视图,手动修复所有模板代码以指向新视图是一件痛苦的事情。

  • {%url%}
    标记将始终指向规范url。在您的示例中,当遵循常见的Django约定时,第二种形式将导致从
    /forums
    /forums/
    的不必要重定向

  • {%url%}
    标记是一个快速故障系统。如果在创建url时url不存在,Django将引发错误-而不是当用户单击链接并获得404时。这有助于开发无错误的应用程序

  • 正如Mikko所说,它允许您更改视图的url,而无需更改每个模板

      • {%url%}
        标记将始终指向规范url。在您的示例中,当遵循常见的Django约定时,第二种形式将导致从
        /forums
        /forums/
        的不必要重定向

      • {%url%}
        标记是一个快速故障系统。如果在创建url时url不存在,Django将引发错误-而不是当用户单击链接并获得404时。这有助于开发无错误的应用程序

      • 正如Mikko所说,它允许您更改视图的url,而无需更改每个模板


      顺便说一句,为了正确起见,您没有使用Jinja。您可能正在使用Django模板,这与Jinja模板不同。Django现在确实支持Jinja模板,但是在这种情况下,
      {%url%}
      模板标记不可用。顺便说一句,为了正确起见,您没有使用Jinja。您可能正在使用Django模板,这与Jinja模板不同。Django现在确实支持Jinja模板,但是在这种情况下,
      {%url%}
      模板标记不可用。更多