• Django 引用{% url "name"%} 避免链接硬编码


    前提条件:为每个url指定name且name值要唯一。比如:

    项目中的url.py文件:

    urlpatterns = patterns('',
        url(r'^$',TemplateView.as_view(template_name='welcome.html'),name="home"),
        url(r'^accounts/', include('accounts.urls', namespace="accounts")),
        url(r'^admin/', include(admin.site.urls)),
    )
    

    accounts应用中的url.py文件:

    urlpatterns = patterns('',
        url(r'^login/$',  login, name="login"),
        url(r'^logout/$', logout, name="logout"),
        url(r'^register/$', views.register,name="register"),
    )
    

    template模板中引用:

    首页url: "/"
    可表示为:

    {%url "home" %}
    

    应用中的链接url: "/accounts/login"
    可表示为:

    {%url "accounts:login" %}
    

    next默认赋值:

    当跳转到"/home"时,{{ next|add:'/home/' }}这样写就太傻
    可写为:

    {{ next | add: home }}
    

    不带参数的:

    {% url 'name' %}
    带参数的:参数可以是变量名
    {% url 'name' 参数 %}
     
    例如:
    <a href="{% url 'add2' 4 5 %}">link</a>
    

    2.views中的引用:

    from django.core.urlresolvers import reverse
    
    
    ##定向到“/”
    
    HttpResponseRedirect(reverse("home"))
    
    ##定向到“/accounts/login”
    HttpResponseRedirect(reverse("accounts:login"))
    
  • 相关阅读:
    ARKit 初体验
    基于树莓派的微型气象站设计与开发(Windows 10 IoT Core)
    UWP开发-重新理解MVVM
    UWP开发-二维变换以及三维变换
    WebRTC for UWP
    swift4.0 Http 请求
    Swift4 Json
    UNITY VR 视频/图片 开发心得(二)
    UNITY VR 视频/图片 开发心得(一)
    UWP开发中的方向传感器
  • 原文地址:https://www.cnblogs.com/ccorz/p/6202756.html
Copyright © 2020-2023  润新知