如问题所述,我在模板中收到两个错误。这是代码
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>
为什么我得到两颗子弹有什么想法吗?:
此标题已被占用
此标题已被占用
繁星点点滴滴
相关分类