Django奉行Python的内置电池哲学。它自带了一系列在Web开发中用于解决常见问题或需求的额外的、可选工具。这些工具和插件,例如​​django.contrib.redirects​​​都必须在settings中的​​INSTALLED_APPS​​处进行注册,有的还需要执行manage.py migrate命令,在数据库中创建一些数据表。

Admin站点是Django有别于其它Web框架最重要的一点,并且非常受欢迎,简直是出门旅游xxxx的必备。不管你是写个小demo还是做个大项目都用得上。admin(下文中将Admin管理后台简称为admin)通过读取你的模型数据,快速构造出一个可以对实际数据进行管理的Web站点,常用于开发测试,简单管理等场合,适用于部门内部为工作方便的场合,但不建议在生产环境中使用。

默认情况下,使用startproject的时候,admin就被激活了。

在使用admin时请注意下面的需求和要点:

  1. 将​​django.contrib.admin​​​加入​​INSTALLED_APPS​​。
  2. admin依赖四个模块,请确保它们存在于​​INSTALLED_APPS​​,他们是django.contrib.auth、django.contrib.contenttypes、django.contrib.messages和django.contrib.sessions。
  3. 在你的settings文件中的TEMPLATES中的​​context_processors​​​选项内添加​​django.contrib.auth.context_processors.auth​​​和​​django.contrib.messages.context_processors.messages​​​这两条。同样,将​​django.contrib.auth.middleware.AuthenticationMiddleware​​​和​​django.contrib.messages.middleware.MessageMiddleware​​​添加到settings的​​MIDDLEWARE​​内。默认情况下,这些都是配置好的。
  4. 决定哪些模型需要在admin内进行管理,在​​admin.py​​文件中注册它们。
  5. 对于每个模型,可以创建一个对应的​​ModelAdmin​​类,这个类将封装对模型的所有自定义设置。
  6. 实例化一个AdminSite,将模型、模型对应的ModelAdmin类传给它。
  7. 链接AdminSite和你的URLconf。这一步通常默认已经完成。

做完上面的步骤,你就可以在浏览器中访问admin站点了,默认地址是​​/admin/​​​。但是,想要登录进去,你首先必须使用​​python manage.py createsuperuser​​命令创建管理员账户。

创建管理员账户的过程中,注意密码强度,不能太简单。

详细教程:

​​django自定制Admin​​

​​django自定义Admin actions​​

​​django Admin文档生成器​​