【发布时间】:2019-07-28 09:36:15
【问题描述】:
我是 Django web dev 的新手,设法在this tutorial 之后设置了一个玩具项目。
但是我发现 Django 官方文档以及本教程非常混乱,我很难理解,尤其是 模板上下文变量。
例如在xxapp/views.py中我们定义了如下几个视图,
from django.views.generic.edit import CreateView, UpdateView, DeleteView
from django.urls import reverse_lazy
from catalog.models import Author
class AuthorCreate(CreateView):
model = Author
fields = '__all__'
initial = {'date_of_death': '05/01/2018'}
class AuthorUpdate(UpdateView):
model = Author
fields = ['first_name', 'last_name', 'date_of_birth', 'date_of_death']
class AuthorDelete(DeleteView):
model = Author
success_url = reverse_lazy('authors')
然后在模板中,我们有这个
{% extends "base_generic.html" %}
{% block content %}
<form action="" method="post">
{% csrf_token %}
<table>
{{ form.as_table }} <!-- WHERE IS THIS "FORM" FROM? -->
</table>
<input type="submit" value="Submit">
</form>
{% endblock %}
我了解这个模板文件,除了一件事,form.as_table 来自哪里,它是什么??
我知道,如果我们使用一些内置的类视图或模型,我们可能会有一些免费的上下文数据,但是我在哪里查找它们,我在 Django 上搜索但一无所获。
【问题讨论】:
标签: python django django-templates