Django学习日记07_Admin

django.contrib

django.contrib是django中附带的一个工具集,由很多的附加组件组成。这些附加组件包括管理工具(django.contrib.admin)、用户鉴别系统(django.contrib.auth)、PostgreSQl详细信息提取(django.contrib.postgres)、匿名会话(django.contrib.sessions)等等。详细的列表可以在Djangodocument里面查看到。

使用管理工具

通过设置settings.py来激活站点管理工具admin:

1. 在mysite.settings中的INSTALLED_APPS中,添加django.contrib.admin、django.contrib.contenttypes、django.contrib.sessions;以及添加django.contrib.auth,这样django会在生成管理界面数据库表时生成超级用户以供登陆;

2. 在mysite.settings中的MIDDLEWARE_CLASSES中,添加django.middleware.common.CommonMiddleware、django.contrib.sessions.middleware.SessionMiddleware、django.contrib.auth.middleware.AuthenticationMiddleware;

这些配置在django中默认是添加的。

通过设置URLconf使得管理页面正确访问:

?

from django.contrib import admin
urlpatterns = [
? ? url(r‘^admin/‘, include(admin.site.urls)),
? ? #… other url
]

可以在django.contrib.admin.site中,查看urls内容:

其返回一个包含url_patterns、app_name、namespace的三元组,响应内容可查看之前随笔。在get_urls()方法中,返回一个可能在管理页面中用到的url_patterns,下图展示get_urls()方法的部分内容,详细内容可查看源代码:

可以看到有登陆、登出、密码变更、应用URL等常用URLconf。

运行python manage.py?syncdb ,启用管理工具,并且提示添加管理员账号、邮箱以及密码。

运行python manage.py runserver 0.0.0.0:8000,启动django服务器,并且在主机中访问127.0.0.1:8888/admin(相关环境以及网络设置见之前随笔),即可看到管理页面:

登陆后显示如下页面:

该页面只是展示了系统自带的一些简单功能,可以通过admin.site.register方法或者@admin.register修饰符来将自己的模型添加到管理页面中,定制自己的管理页面

时间: 2024-11-12 01:03:40

Django学习日记07_Admin的相关文章

Django学习日记02_项目环境

创建一个工程: django-admin.py startproject mySite 将会产生以下文件: mySite/? ? manage.py? ? mySite/? ? ? ? __init__.py? ? ? ? settings.py? ? ? ? urls.py? ? ? ? wsgi.py 配置工程 编辑settings.py文件,在里面修改工程的一些设定: 1. 数据库引擎 默认数据库引擎为sqlite3,如果修改为mySQL或者postpreSQL等,则应该在DATABASE

Django学习日记04_模板_overview

通过Django中的模板,使得设计人员和网站管理有一个对接的接口,实现网页设计和逻辑的分离,因此,模板会处理大量的文本解析内容,django中内部使用了高效的引擎来完成模板解析. 模板设置 在使用模板前,需要对django进行配置,在项目目录的setting.py中, TEMPLATES = [? ? {? ? ? ? 'BACKEND': 'django.template.backends.django.DjangoTemplates',? ? ? ? 'DIRS': [? ? ? ? ? ?

Django学习日记03_模型_Fields

创建模型 模型对应工程中的应用,一个工程可能包含很多的应用,通过命令 python manage.py startapp myapp 创建一个叫myapp的应用,django会帮助生成以下目录: polls/? ? __init__.py? ? admin.py? ? migrations/? ? ? ? __init__.py? ? models.py? ? tests.py? ? views.py 其中,models.py 中就是实现模型设计的地方. python通过模型的搭建避免直接操作数

Django学习日记06_视图_URLconf、View

URLconf Django通过URLconf来响应网页请求,在项目设置settings.py中,设定了ROOT_URLCONF值来指定默认的URLconf(即mysite.urls),当HTTPRequst中没有urlconf属性的话,便会访问该默认值. 在urlconf中,设定了一组pattern: urlpatterns = [? ? url(r'^admin/', include(admin.site.urls)),] 可以往该列表中添加需要的url函数,每个url函数包含两个参数:匹配

Django学习日记05_模板_模板语言

Variables 在模板中,使用两个大括号包含变量的方式来使用变量: {{ name }} 该变量应该作为键值对中的键,在Context中能被查找到. Tags 模板中使用Tags来进行简单的逻辑: {% commet %}? ? #body{% endcommet %} Django内置了大量的Tags: 1. if :使用if标签来实现分支逻辑 {%if option%}? ? #if body{%elif option2%}?? ? #elif body{%else%}?? ? #els

Django学习日记01_环境搭建

1. 使用Vagrant 创建ubuntu虚拟机: 首先安装vagrant,网上有比较多的方法,如:http://www.th7.cn/system/mac/201405/55421.shtml 我使用了ruby的包管理工具gem安装:gem install vagrant 之后mkdir myUbuntu vagrant init?ubuntu/trusty64 vagrant up vagrant ssh 就登陆到了创建的ubuntu虚拟机中 2. 配置ubuntu: 首先,使用apt-ge

学习日记之状态模式和Effective C++

状态模式(State):当一个对象内在状态改变时,允许改变其行为,这个对象看起来像是改变了其类. (1),状态模式主要负责解决的是当控制一个对象转换的条件表达式过于复杂时的情况.把状态的判断逻辑转移到表示不同状态的一系列类中,可以把复杂的判断逻辑简化. (2),状态模式的好处是将与特定状态相关的行为局部化,并且将不同状态的行为分割开来. (3),将特定的状态相关的行为都放入一个对象中,由于所有与状态相关的代码都存在于某个ConcreteState中,所以通过定义新的子类可以很容易地增加新的状态和

学习日记

五一耍了三天,自己的计划有泡汤,那种制止力哪里去了,不过我认真起来还有有废寝忘食的时候,不过希望这种时候多一点,回家妈妈告诉我,她给老师打电话了的,老师说了我的一些情况,不过我没有老师说的那么好,学习在班上算中等.我觉得还算不上吧!任重而道远吧. Java中有个比较重要的类Properties(Java.util.Properties),主要用于读取Java的配置文件,各种语言都有自己所支持的配置文件,配置文件中很多变量是经常改变的,这样做也是为了方便用户,让用户能够脱离程序本身去修改相关的变量

Django 学习笔记(七)数据库基本操作(增查改删)

一.前期准备工作,创建数据库以及数据表,详情点击<Django 学习笔记(六)MySQL配置> 1.创建一个项目 2.创建一个应用 3.更改settings.py 4.更改models.py 5.同步数据 二.安装IPython方便debug sudo apt-get install ipython3 安装成功后用python manage.py shell 会自动进入Ipython交互解释器中,没有安装Ipython只有前两行代码,只进入到Python shell 中. Python 3.5