Я пытаюсь создать для своего проекта 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
Комментарии к сообщениям Django работают некорректно ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как применить комментарии к одному сообщению ко всем сообщениям одной категории в Wordpress
Anonymous » » в форуме Php - 0 Ответы
- 24 Просмотры
-
Последнее сообщение Anonymous
-