0
장고 블로그 프로젝트에 대한 의견을 작성하려고하지만 양식 제출 버튼을 클릭해도 아무런 변화가 없습니다.양식이 정보를 제출하지 않음 (Django)
다음은 템플릿의 html입니다.
<form role="form" method="post">
<div class="input-group">
{% csrf_token %}
{% for field in form %}
{{ field }}
{% endfor %}
<p>Comment: </p>
<span class="input-group-btn">
<button class="btn btn-default" type="submit">Submit</button>
</span>
</div>
</form>
다음은 버튼을 눌렀을 때 전화를 걸려고하는 화면입니다.
def detail(request, slug):
context ={}
post = BlogPost.objects.get(slug=slug)
# print(request.method)
if request.method=='POST':
form = CommentForm(request.POST)
else:
form = CommentForm()
if form.is_valid():
t = form.save(commit=False)
t.commentTime = datetime.datetime.now()
t.save()
return HttpResponseRedirect(reverse('blogpost_detail'))
comment_list=Comments.objects.order_by('-commentTime')[:25]
context = {'comment':comment_list,'form':form, 'post': post}
return render(request, 'blog/blogpost_detail.html', context)
다음은 템플릿에서 호출되는 양식입니다.
class CommentForm(forms.ModelForm):
class Meta:
model = Comments
fields=('commentText', 'commentImage',)
exclude =('post','commentTime',)
widgets={
'commentText': forms.Textarea(attrs={'col':10}),
}
도움 주셔서 감사합니다!
이어야합니다. 'form.is_valid'는'POST' 체크 안에 있어야합니다. 그렇게하지 않으면'form.is_valid'는 매번 (GET을 위해) 평가합니다. 이것은 의도 한 것이 아닙니다. 또한, 현재 URL이'POST '를하고자하는 곳인지 확인하십시오. 아니면'action'을 명시 적으로 지정해야합니다. – karthikr
'form' 태그에는'action'이 없습니다; '
어드 바이스 친구들에게 감사드립니다! @karthikr 나는 POST하고 싶지만 여전히 클릭 할 때 아무 것도하지 않는 URL에있다. – enjoysturtles