表格不提交信息(Django)

时间:2015-02-02 23:46:35

标签: python django forms django-templates

我正在尝试为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}),
       }

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

您需要在表单标记中使用action属性。由于您要发布到相同的网址,因此应该

<form action="." method="post " role°"form">