我在URL foo,bar中传递了2个变量。变量栏有多个单词,单词之间有空格。在foo和bar的基础上,呈现模板的内容。每当bar在单词之间有空格,我的url处理程序就会给出404.
示例:localhost / post / foo / ba r / 结果是404
urls.py
urlpatterns = [
re_path('post/<slug:foo>/<slug:bar>/', post),
]
views.py
def post(request, foo, bar):
query = Blog.objects.all().filter(category=foo, title=bar)
return render(request, 'blog/post.html',
{'blog': query, 'cat': foo, 'tit': bar})
post.html
{% for i in blog %}
{{ i.content }}
{% endfor %}
答案 0 :(得分:2)
您可以使用正则表达式允许空格和其他字符。
re_path(r'^post/(?P<foo>[\w|\W]+)/(?P<bar>[\w|\W]+)/$', post)