Python 覆盖Django管理与创建新模板/视图

Python 覆盖Django管理与创建新模板/视图,python,django,Python,Django,我是Django的不速之客,我来自PHP世界,我习惯于用不同的方式做事 我正在构建一个应用程序,我想改变后端的外观,我想使用Bootstrap 4并添加许多自定义内容,例如基于权限的管理视图,我想知道什么是最佳实践,或者更有经验的django开发人员如何做到这一点 他们是否覆盖所有django.contrib.admin模板,或者是否构建自定义模板并在其旁边登录/注册,并且仅对超级用户使用django.contrib.admin django路是什么?是的。管理页面实际上是用来管理网页的。对于用

我是Django的不速之客,我来自PHP世界,我习惯于用不同的方式做事

我正在构建一个应用程序,我想改变后端的外观,我想使用Bootstrap 4并添加许多自定义内容,例如基于权限的管理视图,我想知道什么是最佳实践,或者更有经验的django开发人员如何做到这一点

他们是否覆盖所有django.contrib.admin模板,或者是否构建自定义模板并在其旁边登录/注册,并且仅对超级用户使用django.contrib.admin


django路是什么?

是的。管理页面实际上是用来管理网页的。对于用户登录和注册,您可以创建模板。然而,如果你想让你的后端看起来不同,那么你可以调整管理员页面的模板,管理员登录页面也可以。您还可以拥有基于权限的管理视图。只要你知道自己在做什么,就可以超越默认值。希望这有帮助

Django admin用于管理目的。无论出于何种目的,它都是与数据库的直接接口。虽然我见过一些人使用admin构建面向客户的界面,但这绝对不是构建一般Django web应用程序的方法

您应该为模型定义视图。您可以使用内置API登录和验证用户。您很可能应该将管理员权限仅限于内部用户

至于模板,现代的做法是使用API动态获取数据,并使用Javascript执行所有UI逻辑。Django可以很好地用于为前端提供API。查看Django REST框架。其基本思想是为您的模型编写序列化程序,并让视图函数为前端的序列化数据提供服务


当然,你可以采用传统的方式,使用模板呈现你的页面。在这种情况下,视图将使用模型提供的数据呈现模板。

大多数人使用管理员,因为它符合他们的要求。如果你需要别的东西,不要用。在Django中创建CRUD视图并不难。因此,我认为你最好创建自己的观点。