Есть форма для комментариев к постам блога, сейчас она лежит на отдельном url, так как если я её пытаюсь запихнуть на страницу, то она не отображается, так же нужно сделать так что бы форма привязывалась к определённому посту по slug
url
from django.urls import path
from .views import *
urlpatterns = [
path('', HomePage.as_view(), name='home'),
path('category/<str:slug>/', GetCategory.as_view(), name='category'),
path('post/<str:slug>/', ShowPost.as_view(), name='post'),
path('tag/<str:slug>/', ShowPostByTag.as_view(), name='tag'),
path('search/', Search.as_view(), name='search'),
path('form/', AddComment.as_view(), name='form')
]
views
class AddComment(CreateView):
form_class = CommentForm
template_name = 'blog/form.html'
success_url = reverse_lazy('home')
forms
from django import forms
from .models import Comment, Post
class CommentForm(forms.ModelForm):
class Meta:
model = Comment
fields = ['name', 'email', 'content', 'post']
widget = {
'post': forms.TextInput(),
'name': forms.TextInput(),
'email': forms.EmailInput(),
'content': forms.Textarea()
}
html - я тут вставил form.as_p просто что б посмотреть что она выводится и работает
<form action="" method="post">
{% csrf_token %}
<div class="name">
<input type="text" name="" id="" placeholder="Name" class="name">
</div>
<div class="email">
<input type="email" name="" id="" placeholder="Email" class="email">
</div>
<div class="comment">
<input type="text" name="" id="" placeholder="Comment" class="comment">
</div>
<div class="post">
<input type="submit" value="Post">
</div>
{{form.as_p}}
<button type="submit">Comment</button>
</form>