Django url tag multiple parameters
I have two similar codes. The first one works as expected.
urlpatterns = patterns('',
                       (r'^(?P<n1>\d)/test/', test),
                       (r'', test2),
{% url testapp.views.test n1=5 %}
But adding the second parameter makes the result return empty string.
urlpatterns = patterns('',
                           (r'^(?P<n1>\d)/test(?P<n2>\d)/', test),
                           (r'', test2),)
{% url testapp.views.test n1=5, n2=2 %}
Views signature:
def t开发者_运维百科est(request, n1, n2=1):
Try
{% url testapp.views.test n1=5,n2=2 %}
without the space between the arguments
Update: As of Django 1.9 (and maybe earlier) the correct way is to omit the comma and separate arguments using spaces:
{% url testapp.views.test n1=5 n2=2 %}
Here's an actual example of me using this technique. Maybe this will help:
{% if stories %}
  <h2>Stories by @{{author.username}}</h2>
  <ul>
    {% for story in stories %}
      <li><a href="{% url 'reader:story' author.username story.slug %}">{{story.title}}</a></li>
    {% endfor %}
  </ul>
{% else %}
  <p>@{{author.username}} hasn't published any stories yet.</p>
{% endif %}
https://docs.djangoproject.com/en/1.9/ref/templates/builtins/#url
From Django 1.5 Warning Don’t forget to put quotes around the function path or pattern name!
{% url 'some-url-name' arg1=v1 arg2=v2 %}
 
         加载中,请稍侯......
 加载中,请稍侯......
      
精彩评论