【发布时间】:2021-04-01 08:02:24
【问题描述】:
我的问题是,当我转到我的 add.html 页面时,标题和文本区域的输入表单不显示。对于上下文,这是针对我必须设计“wiki”的在线课程。这部分代码用于添加条目(标题和正文内容)
这是我的代码:
views.py
class Form(forms.Form):
title = forms.CharField(label="Post Title")
textarea = forms.CharField(widget=forms.Textarea(), label='')
def create(request):
if request.method == "POST":
form = Form(request.POST)
if form.is_valid():
title = form.cleaned_data["title"]
textarea = form.cleaned_data["textarea"]
entries = util.list_entries()
if title in entries:
return render(request, "encyclopedia/error.html")
else:
util.save_entry(title, textarea)
page = util.get_entry(title)
page_converted = markdowner.convert(page)
context = dict(body=page_converted, title=title)
return render(request, "encyclopedia/entry.html", context)
else:
return render(request, "encyclopedia/create.html", {
"post": Form()
})
add.html
{% extends "encyclopedia/layout.html" %}
{% block body %}
<h1>
Add Post
</h1>
<form action="{% url 'create' %}" method="post">
{% csrf_token %}
<h6 class="post-title">Title: {{ post.title }}</h6>
{{ post.textarea }}
<input type="submit" value="add entry">
</form>
<a href="{% url 'index' %}">View Entries</a>
{% endblock %}
【问题讨论】: