Python 在此服务器上找不到请求的URL。德扬戈
我尝试在页面上写评论,然后在页面上重定向,我在浏览器中有一个空窗口,并且Python 在此服务器上找不到请求的URL。德扬戈,python,django,http-status-code-404,Python,Django,Http Status Code 404,我尝试在页面上写评论,然后在页面上重定向,我在浏览器中有一个空窗口,并且 [b'未找到在此服务器上未找到请求的URL/post/add_comment/test_single_post/。']和断言错误:404!=302 在终端日志中。 我不明白为什么在这种情况下找不到页面(404) 看法 网址 urlpatterns=patterns(“”, url(r'^post/(?P\S+/$),SinglePost.as_view(), name='single_post'), url(r'^tag/
[b'未找到在此服务器上未找到请求的URL/post/add_comment/test_single_post/。']
和断言错误:404!=302
在终端日志中。
我不明白为什么在这种情况下找不到页面(404)
看法
网址
urlpatterns=patterns(“”,
url(r'^post/(?P\S+/$),SinglePost.as_view(),
name='single_post'),
url(r'^tag/(?P\S+/$),TagView.as_view(),
name='tagger'),
url(r'^post/add_comment/(?P\S+)/$),
'blog.views.add_comment',name=“commenter”),
url(r'^$',PostsList.as_view(),name=“all_posts”),
)
模板
<h3>Comments:</h3>
{% for comment in comments %}
<p>{{ comment.added }} | {{ comment.author }}</p>
<p>{{ comment.comment_text }}</p>
{% empty %}
<p>There are no comments here yet. Be first :)</p>
{% endfor %}
<form action="/post/add_comment/{{ object.slug }}/" method="POST">
{% csrf_token %}
{{ form.non_field_errors }}
<div class="fieldWrapper">
{{ form.subject.errors }}
<label for="id_author">Add your name:</label><br>
{{ form.author|addclass:"form-control" }}
<br/>
<label for="id_comment_text">Add your comment here:</label><br>
{{ form.comment_text|addclass:'form-control comment-textarea' }}
</div>
<br>
<input type="submit" value="Add comment" class="btn btn-primary">
</form>
注释:
{注释%中的注释为%}
{{comment.added}}{{comment.author}}
{{comment.comment_text}
{%empty%}
这里还没有评论。第一名:)
{%endfor%}
{%csrf_令牌%}
{{form.non_field_errors}}
{{form.subject.errors}
添加您的姓名:
{{form.author | addclass:“表单控制”}
在此处添加您的评论:
{{form.comment_text}addclass:'form-control comment textarea'}
谁能给我一个如何解决这个问题的答案吗?你的
单发
regex捕获所有以“post/”开头的URL。将此url放置在模式的末尾:
urlpatterns = patterns('',
url(r'^tag/(?P<slug>\S+)/$', TagView.as_view(),
name='tagger'),
url(r'^post/add_comment/(?P<slug>\S+)/$',
'blog.views.add_comment', name="commenter"),
url(r'^$', PostsList.as_view(), name="all_posts"),
url(r'^post/(?P<slug>\S+)/$', SinglePost.as_view(),
name='single_post'),
)
您有两个重叠的正则表达式:
url(r'^post/(?P<slug>\S+)/$', SinglePost.as_view(),
name='single_post'),
[...]
url(r'^post/add_comment/(?P<slug>\S+)/$',
url(r'^post/(?P\S+/$),SinglePost.as_view(),
name='single_post'),
[...]
url(r'^post/add_comment/(?P\S+)/$),
你应该把第一个改成不那么贪婪的,例如:
r'^post/(?p[^/]+)/$”
或者把它放在末尾。再次感谢你,卡塔瓦兰。这是我的心不在焉。
urlpatterns = patterns('',
url(r'^tag/(?P<slug>\S+)/$', TagView.as_view(),
name='tagger'),
url(r'^post/add_comment/(?P<slug>\S+)/$',
'blog.views.add_comment', name="commenter"),
url(r'^$', PostsList.as_view(), name="all_posts"),
url(r'^post/(?P<slug>\S+)/$', SinglePost.as_view(),
name='single_post'),
)
urlpatterns = patterns('',
url(r'^post/(?P<slug>[\w-]+)/$', SinglePost.as_view(),
name='single_post'),
url(r'^tag/(?P<slug>[\w-]+)/$', TagView.as_view(),
name='tagger'),
url(r'^post/add_comment/(?P<slug>[\w-]+)/$',
'blog.views.add_comment', name="commenter"),
url(r'^$', PostsList.as_view(), name="all_posts"),
)
url(r'^post/(?P<slug>\S+)/$', SinglePost.as_view(),
name='single_post'),
[...]
url(r'^post/add_comment/(?P<slug>\S+)/$',