我是Django的新手,我正试图在一个能够编辑它的网页上显示我的数据库。
这是我的views.py
def task1(request):
if request.POST:
form = AuthorForm(request.POST)
if form.is_valid():
form.save()
return render(request,'tasks/index.html')
else:
form = AuthorForm()
args = {}
args.update(csrf(request))
args['form'] = form
return render_to_response('tasks/task1.html', {'authors':Author.objects.all()})
这样我可以在网页上打印我的数据库
但我也希望能够为其添加新记录
我用过
return render_to_response('tasks/task1.html',args)
但我怎样才送两个?据我所知,必须有一本字典。
这是一个模板
{% extends "tasks/index.html" %}
{% load bootstrap3 %}
{% load staticfiles %}
{% bootstrap_css %}
{% bootstrap_javascript %}
{% bootstrap_messages %}
{% block tasks %}
<p>31231</p>
<form action="/task1/" method="post">{% csrf_token %}
<ul>
{{ form.as_table}}
</ul>
<input type="submit" value="Create" />
</form>
{% if authors.count > 0 %}
{% for author in authors %}
<ul>
{{author.id}} {{author.name}} {{author.body}}
</ul>
{{% endfor %}
{{% endif %}
{% endblock %}
答案 0 :(得分:1)
args = {}
args.update(csrf(request))
args['form'] = form
args['authors'] = Author.objects.all()
return render_to_response('tasks/task1.html',args)
答案 1 :(得分:0)
return render_to_response('tasks/task1.html', {'authors':Author.objects.all(),'foo':foo,'bar':bar})
或
args = {'authors':Author.objects.all(),'foo':foo,'bar':bar}
return render_to_response('tasks/task1.html',args)
请注意,您只需使用render
代替render_to_response
来自django&gt; = 1.3