我愿意说服这是一个坏主意。但如果没有,这是一般的平局:
- 维护数据的 Web 界面 (django.contrib.admin)。
- 创建页面的 Web 界面 (django.contrib.flatpages)
- 用于创建模板的 Web 界面 ( dbtemplates )
- 用于创建查询和定义上下文的 Web 界面在哪里?(上下文?)
编辑
这是 Django 站点开发的正常情况。您要创建一个新页面,找出它的 url,找出支持该页面所需的数据,然后创建适当的模板,以便以您想要的方式呈现数据。
我想要做的是从管理界面定义支持页面所需的数据;本质上是您放入 views.py 文件的内容。
我想有一个处理身份验证的包装器视图,但从模型(表)接收其所有上下文。
from dbcontext import DBContext # this is fictitious
def db_context_view(request, **args, **kwargs):
# ...some code to handle auth
context = DBContext.objects.get_context_for_request(request, **args, **kwargs)
return render_to_response('mydbtemplates/example.html', context)
我仍然很乐意编辑 urls.py 文件以确保将足够多的内容传递给视图,以便 DBContext 管理器可以找到适当的上下文记录,执行所需的查询(满足任何查询参数),并为模板成功。