У меня есть 2 отдельные модели, Post и Comment. Я использую DetailView для отображения содержимого сообщения и хочу использовать CreateView для отображения формы создания комментариев на той же странице. Каков самый чистый способ сделать это?
Единственное, что приходит на ум, это использовать пользовательское представление, которое и получает объект, и обрабатывает форму комментария, но это выглядит слишком грязно:
def post_detail(request, slug):
post = get_object_or_404(Post, slug=slug)
if request.POST:
form = CommentForm(request.POST)
# do comment form processing here
return render(request, "post/post_detail.html", {
"object": post, "comment_form": form})
Есть ли какой-нибудь чистый способ сделать это, используя представления на основе классов? Или просто какой-то способ отделить код отображения сообщений от кода обработки комментариев?
GET
иPOST
, попробуйтеdjango.views.generic.base.View
. Или создайте теги шаблонов для создания форм комментариев к объектам (как это было в старомdjango.contrib.comments
). - person Maciej Gol   schedule 26.12.2013