nob*_*be4 5 python django django-urls django-views
我正在尝试根据页面列表构建动态的URL列表.
在我的urls.py中,整个应用程序位于命名空间后面base:
urlpatterns = patterns('',
url(r'^(?P<pk>[\w]+)/title/$', TitleSection.as_view(), name='title'),
url(r'^(?P<pk>[\w]+)/amount/$', AmountSection.as_view(), name='amount'),
url(r'^(?P<pk>[\w]+)/description/$', DescriptionSection.as_view(), name='description'), )
Run Code Online (Sandbox Code Playgroud)
在我的context数据中,我有以下列表:
sections: ['title', 'amount', 'description']
Run Code Online (Sandbox Code Playgroud)
我正在尝试为部分中的每个元素构建URL.
我尝试了以下方法:
{% for section in sections %}
<a href="{% url "base:"+section pk=object.id %}">..</a>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
但是我收到以下错误:
无法解析余数:'+ base'来自''base:"+ section'
然后我尝试了:
<a href="{% url "base:{{section}}" pk=project.id %}">{{ section }}</a>
Run Code Online (Sandbox Code Playgroud)
错误:
使用参数'()'和关键字参数'{u'pk':77}'找不到'{{section}}'的反转.尝试过0种模式:[]
你知道怎么做吗?
Ala*_*air 11
您可以使用添加模板过滤器:
{% url "base:"|add:section pk=project.id %}
Run Code Online (Sandbox Code Playgroud)
小智 5
对于我的情况也有效
{% for section in sections %}
<a href="{% url "base" pk=object.id %}">..</a>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
其中 url 模式是
url=[
path('base/<pk>/',base,name='base'),
]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6474 次 |
| 最近记录: |