在django 1.6中将参数传递给模板中的url?

时间:2014-03-20 19:56:22

标签: django django-urls

我想将argument(整数)传递给url中的template。但是当我尝试以下操作时出现错误:

{% for post in posts %}
    <div id="sidebar"><a href="{% url "blogapp.views.singlepost" %}?'post_id'={{post.id}}">{{ post.title }}</a></div>

I also tried:
<div id="sidebar"><a href="{% url "blogapp.views.singlepost" %}?post_id={{post.id}}">{{ post.title }}</a></div>

我试过了两个。但失败了。 我遵循了这些articles。但它没有帮助。 有什么建议。我正在使用django 1.6

编辑: URLconf

urlpatterns = patterns('blogapp.views',
    # Examples:
    # url(r'^$', 'djangoLesson.views.home', name='home'),
    url(r'^$', 'allposts',name='allposts'),
    url(r'^world/$', 'hello'),
    url(r'^all/$','allposts'),
    url(r'^all/get/(?P<post_id>\d+)/$','singlepost'),
    url(r'^language/(?P<language>[a-z\-]+)/$','language'),
    url(r'^post/(?P<slug>[-\w]+)$', 
        'view_post',
        name='blog_post_detail'),
)

1 个答案:

答案 0 :(得分:2)

试试这个:

<div id="sidebar"><a href="{% url 'blogapp.views.singlepost' post_id=post.id %}">{{ post.title }}</a></div>

由于您使用的是模板标记,因此在模板标记内不再需要{{post.id}}