Django NoReverseMatch错误,url配置和视图有效

2024-09-26 22:52:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我的模板呈现中出现NoReverseMatch错误。你知道吗

以下是相关模板:

<ul id='comments'>
{% for comment in comments %}
<li class='comment'>
    <img class='gravatar' src='{{ comment.User|gravatar:50}}' alt='{{ comment.User.get_full_name }}' \>
    <a href='{% url 'dashboard.views.users.profile' comment.User.id %}' class='user'>
        {{comment.User.get_full_name}}
    </a>

    <p class='comment-timestamp'>{{comment.created}}</p>
    <p class='comment-content'>{{comment.comment|striptags}}<br>
    {% if user == comment.user or user = report.user %}
    <a href="{% url 'mokr.delete_comment' comment.id %}">Delete</a></p>
    {% endif %}
</li>

{% endfor %}

错误出现在url的mokr.delete\u注释'行

以下是视图:

def delete_comment(request, comment_id):

    comment = get_object_or_404(ReportComment, id = comment_id)
    report = comment.MgmtReport
    comment.delete()

    project = report.project

    return HttpResponseRedirect(reverse('show_post', args=(project.url_path, report.id)))

以及网址.py你知道吗

(r'^mokr/comment/(\d+)/delete/$', mokr.delete_comment),
url(r'^mokr/show/([^\.]*)/(\d+)/$', mokr.show, name='show_post'),

Tags: namereportproject模板idurlgetshow
2条回答

改变你的网址.py向delete comment url添加name参数。你知道吗

(r'^mokr/comment/(\d+)/delete/$', mokr.delete_comment, name="delete_comment"),

然后试着在你的模板中使用它

{% url 'delete_comment' comment.id %}

naming URL patternsreverse resolution of URLs

您在delete\u comment视图中调用reverse时向模板传递了两个参数;args=(project.url_path, report.id)但是网址.py列表

(r'^mokr/comment/(\d+)/delete/$', mokr.delete_comment),

只能接受一个参数。你知道吗

相关问题 更多 >

    热门问题