Url django 中字母数字(slug)字符串的模式
Url pattern for alphanumeric(slug) string in django
我正在努力使这个 url 模式起作用,但我没有得到 anywhere.I get a page not found error.The url 在我的 url bar 是 http://127.0.0.1:8000/tags/?Python
if I select python slug,但它不使用定义的 url。
我想要做的是,打开一个包含 slug 相关信息的新模板。
这是我的看法:
def tags(request,slug):
verse = get_object_or_404(Tag, slug=slug)
return render(request, 'tags.html',{'verse':verse})
这是我的 url:
url(r'^tags/(?P<slug>[\W-]+)/$', views.tags),
这是我的模板:
Tagged under - {% for i in verse.tags.all%}<a href='/tags'>{{ i }} | </a>{% endfor %}
我试过在模板中传递一个查询字符串:
/tags/q={{i}}
我也试过用:
{% url tags i.slug %}
(基于Slug Url Regex in Django)
但到目前为止没有任何效果。我想打开显示 selected slug 的标签模板。
您必须在 url
中设置一个类似下面的名称:
url(r'^tags/(?P<slug>.+)/$', views.tags, name='tags'),
在模板中将您的 url
标签更改为:
{% url "tags" slug=i.slug %}
我正在努力使这个 url 模式起作用,但我没有得到 anywhere.I get a page not found error.The url 在我的 url bar 是 http://127.0.0.1:8000/tags/?Python
if I select python slug,但它不使用定义的 url。
我想要做的是,打开一个包含 slug 相关信息的新模板。
这是我的看法:
def tags(request,slug):
verse = get_object_or_404(Tag, slug=slug)
return render(request, 'tags.html',{'verse':verse})
这是我的 url:
url(r'^tags/(?P<slug>[\W-]+)/$', views.tags),
这是我的模板:
Tagged under - {% for i in verse.tags.all%}<a href='/tags'>{{ i }} | </a>{% endfor %}
我试过在模板中传递一个查询字符串:
/tags/q={{i}}
我也试过用:
{% url tags i.slug %}
(基于Slug Url Regex in Django)
但到目前为止没有任何效果。我想打开显示 selected slug 的标签模板。
您必须在 url
中设置一个类似下面的名称:
url(r'^tags/(?P<slug>.+)/$', views.tags, name='tags'),
在模板中将您的 url
标签更改为:
{% url "tags" slug=i.slug %}