•  
  • 1
  •  
2

Система комментариев в Django

Значится, как и положено новичкам, пишу блог :) Добавил систему комментариев, все вроде окей, но вот после добавления нового комментария выводит такую муть: Thank you for your comment. на адресе "сomments/posted/?c=1"

Вот как пропускать эту страницу?

urls.py:

urlpatterns = patterns( ................ (r'^comments/', include('django.contrib.comments.urls')), ............ )

template:

 {% ifequal iscomments 'true' %}
                        <h3>Comments:</h3>

                            {% get_comment_list for i as allcomments %}                          
                            {% for acomment in allcomments %}
                                <a href="{{ acomment.user_url }}">{{ acomment.user_name }}
                                </a>: {{ acomment.comment }} <br> <br>
                            {% endfor %}
                            <div>{% render_comment_form for i %}</div>
     {% endifequal %}
django, comment.
спросил 1020 дней назад Аватор пользователя shtpavel shtpavel
92 4
изменил 1020 дней назад Аватор пользователя shtpavel shtpavel
92 4
300

2 ответа:

    •  
    • 2
    •  

    Я бы не рендерил форму таким образом. Лучше иметь более гибкое управление полями формы. Тогда можно будет добавить скрытое поле с путём для переадресации <input type="hidden" name="next" value="путь_для_редиректа"/>. Либо переписываем своём urls.py некоторые пути и вьюшки на свои. Для этого нужно заглянуть в django.contrib.comments.urls

    ответил 1020 дней назад Аватор пользователя tc tc
    718 15
    •  
    • 0
    •  

    как уже написал tc или добавлять <input type="hidden" name="next" value="путь_для_редиректа"/> или менее накручено во вьувсах где добавлется коментарий в конце

    return HttpResponseRedirect(request.META['HTTP_REFERER'])
    

    это вернет туда откуда был оправлен запрос.

    ответил 1019 дней назад Аватор пользователя rnd_d rnd_d
    102 7
    изменил 1019 дней назад Аватор пользователя rnd_d rnd_d
    102 7
Чтобы написать ответ, вы должны авторизироваться.