Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Django
  • » Обработка ошибки пустой формы комментария. Заодно и редирект. [RSS Feed]

#1 Март 1, 2013 16:05:38

dnstuff
Зарегистрирован: 2012-11-05
Сообщения: 113
Репутация: +  1  -
Профиль   Отправить e-mail  

Обработка ошибки пустой формы комментария. Заодно и редирект.

Здравствуйте!
Использую встроенные джанговские комментарии:
template:

<h2>Add comment</h2> {%  get_comment_form for post as form %} 
<form  action="{% comment_form_target %}" method="post" > {% csrf_token %}   
{{form.content_type}}{{form.object_pk}}{{form.timestamp}}{{form.security_hash}}
Comment:<br />
{{form.comment}}
<input type="hidden" name="next" value="{{ request.get_full_path }}#comment" /> 
<button class="btn btn-large btn-primary" type="submit">Post</button>
</form>
urls:
(r'^comments/', include('django.contrib.comments.urls')),
При отправке пустой формы происходит переход на страницу /comments/post/. Но хотелось бы, чтобы страница оставалась текущей и выводилось сообщение об ошибке.
Первый вопрос, как это можно сделать?
Я пока решил сделать редирект с /comments/post/ обратно.
Начал было писать вьюху:
def comment_error(request):
	return HttpResponseRedirect("???Обратно???")
И тут второй вопрос, “обратно” это куда?
Спасибо!

Офлайн

#2 Март 1, 2013 16:35:48

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Обработка ошибки пустой формы комментария. Заодно и редирект.

Какого рода сообщение об ошибке? То есть, юзер должен увидеть 404 или что и где?
Что значит “пустой формы”? пользователь не заполнил обязательные поля формы? Это тривиально.
Хотите отловить на клиенте отправку незаполенной формы? Это проблема JS, никак не Джанги.

Конкретизируйте, “ну непонятно же!” (с)



Офлайн

#3 Март 1, 2013 16:39:45

dnstuff
Зарегистрирован: 2012-11-05
Сообщения: 113
Репутация: +  1  -
Профиль   Отправить e-mail  

Обработка ошибки пустой формы комментария. Заодно и редирект.

Пустая форма - незаполненная. С заполненной формой проблем нет.
404 не надо. Надо обновить страницу с формой, добавив в шаблон сообщение об ошибке.

Офлайн

#4 Март 1, 2013 16:50:04

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Обработка ошибки пустой формы комментария. Заодно и редирект.

И в чем проблема?
В форме есть обязательные поля?
Если да, то проблема решена, если условие таково, что нужно хоть что-нибудь заполнить, то переопределяйте clean у формы, проверяйте там, что cleaned_data пустая, и если оно так, возвращайте форму с ошибкой.



Офлайн

  • Начало
  • » Django
  • » Обработка ошибки пустой формы комментария. Заодно и редирект.[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version