为了账号安全,请及时绑定邮箱和手机立即绑定

Django 验证返回两个错误而不是一个

Django 验证返回两个错误而不是一个

翻过高山走不出你 2023-05-23 15:31:59
如问题所述,我在模板中收到两个错误。这是代码def create(request):full_content = forms.InputForm()if request.method == "POST":    full_content = forms.InputForm(request.POST)        if full_content.is_valid():         title = full_content.cleaned_data["title"]        content = full_content.cleaned_data["content"]         if full_content.clean_title():#Works                            full_content.create(title, content)            context= {                'title' : util.get_page_name(title),                'entry' : util.get_entry(title),            }                            return render(request, "encyclopedia/entry.html",context)                   #From here on its not valid:    context = {        'form':full_content    }    return render(request, "encyclopedia/create.html", context)      return render(request, "encyclopedia/create.html", {    'form':full_content})以及 forms.clean_title():def clean_title(self):    title_name = self.cleaned_data.get("title")    filename = f'entries/{title_name}.md'            if default_storage.exists(filename):        raise ValidationError("This title is already taken")    return title_name当然还有 create.html:<h3>Create new entry</h3><form action="{% url 'create'%}" method="POST">        {{ form.title.errors }}        {% csrf_token %}    <table>        {{form.as_p}}    </table>        <button type="submit" value="save">Save</button></form>为什么我得到两颗子弹有什么想法吗?:此标题已被占用此标题已被占用
查看完整描述

1 回答

?
繁星点点滴滴

TA贡献1803条经验 获得超3个赞

没必要{{ form.title.errors }}。{{form.as_p}}也是显示错误。所以删除它。


<h3>Create new entry</h3>

<form action="{% url 'create'%}" method="POST">

    

    {% csrf_token %}

    <table>

        {{form.as_p}}

    </table>

    

    <button type="submit" value="save">Save</button>

</form>


查看完整回答
反对 回复 2023-05-23
  • 1 回答
  • 0 关注
  • 99 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信