Комментарии к сообщениям Django работают некорректноPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Комментарии к сообщениям Django работают некорректно

Сообщение Anonymous »

Я пытаюсь создать для своего проекта Django систему, которая позволит пользователям оставлять комментарии к определенным сообщениям. Однако это не работает.
Я пытался ввести код в form.py,views.py,urls.py и index.html для обработки записей сообщений. Однако вместо этого это привело к тому, что кнопка отправки в index.html оказалась без полей для ввода, и при нажатии на нее страница перезагружается без обновления базы данных.
forms.py:
class PostCommentForm(forms.ModelForm):
class Meta:
model = PostComment
fields = ['post_comment']

views.py:
from django.core import paginator
from django.shortcuts import render, redirect, get_object_or_404
from django.http import HttpResponse
from .models import *
from django.views.generic import ListView, CreateView, UpdateView
from django.views.generic.detail import DetailView
from .forms import *
from django.contrib.auth.forms import UserCreationForm
from django.contrib.auth import login
from django.core.paginator import Paginator
import random

def index(request):
postdata=Post_Data.objects.all()
profiledata=ProfileData.objects.all()
likedata=Like.objects.all()
dislikedata=Dislike.objects.all()
commentdata=PostComment.objects.all()

return render(request, 'index.html', {'title': 'RT', 'postdata': postdata, 'profiledata': profiledata, 'likedata': likedata, 'dislikedata': dislikedata, 'commentdata': commentdata})

def create_comment(request):
if request.method == 'POST':
comment = PostCommentForm(request.POST)
if comment.is_valid():
post = comment.save()
post.user = request.user
post.save()
return redirect('/')
else:
form = PostForm()
return render(request, 'index.html', {'comment': comment})


urls.py:
from .views import create_post

urlpatterns = [
path('', views.index, name='RT'),
path('', views.create_comment, name='comment-creation')
]

index.html:

{% csrf_token %}
{{ form.as_p }}
Submit Comment


models.py:
class PostComment(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
post = models.ForeignKey(Post_Data, on_delete=models.CASCADE)
post_comment = models.CharField(max_length=500)
timestamp = models.DateTimeField(auto_now_add=True)

def __str__(self):
return f"Comment by {self.user} on {self.post}"


Подробнее здесь: https://stackoverflow.com/questions/790 ... -correctly
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»