我当时认为django admin是一个实用程序,可以提供站点的可信管理员,完全访问站点的数据模型.
但是,在详细介绍了django admin之后,我了解到它是一组非常强大的视图和模板,可用于创建整个应用程序.
您是否经常使用管理员创建整个应用程序?使用视图本身比自定义管理员更容易吗?
如何使用admin构建原型.我们甚至需要构建原型吗?管理员自定义无法在实际应用程序中重复使用.
如果我想在实际应用程序中使用部分管理代码(使用不同的模板),是否有某种脚手架选项可用?
"管理员不是你的应用程序."
如果定制超出了微不足道的范围,请编写自己的视图.
根据我的经验,我保持内部管理页面不受影响.相反,我覆盖了管理索引模板,当用户需要进行重要的报告或表单处理时,我将链接放到自定义编写的视图中.
我之前做过类似的事情.这是一个完全通过扩展Django管理员实现的大学的CMS.原来这是一个糟糕的设计决策.我不得不跳过篮球去做一些事情.
这实际上取决于您的应用程序的要求.如果需要大量的ajax或某些特定的工作流程扩展,管理员将不是正确的事情.但我认为扩展管理员可以覆盖60%的案例.
它也非常适合构建原型.
编辑
好的,那是在0.96天.
到目前为止,我已经建立了两个完全在新管理员之上生产的"大"网站.这些主要是案例管理,数据输入和报告,因此可以挤入管理员的工作流程.但是,不是没有花费大量精力来扩展基础站点,ModelAdmin,InlineModelAdmin等.这样做的决定是我们被迫快速做到这一点.但在第一种情况下,它也完全符合要求.两者都在政府部门的内部网上运行.两者都做得很好.一个有200个表处理成千上万的条目.另一个管理付款.
所以,是的,这是真的.管理员不是您的应用.但是,它可以扩展,尽管其中大部分都没有记录.它适用于大多数基本的入门工作流程.所以在有限的场景中值得考虑.
我不同意其他大多数答案.
简而言之,使用管理员应用程序无法获得免费内容.
您对管理员的第一次定制将是艰难的,因为您将面临陡峭的学习曲线(您将需要处理重写模板,管理器,ModelAdmins,可能使用数据库视图,CSS和JS,一些其他表单和验证规则,等等...).但是一旦完成,你就会开始觉得将管理系统弯曲到你需要的状态.我已经构建了一个复杂的库存和会计Web应用程序,其中包含数据输入,报告和权限系统,所有这些都完全基于管理界面和后端.