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修饰符来将自己的模型添加到管理页面中,定制自己的管理页面

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

  1. Django学习日记02_项目环境

    创建一个工程: django-admin.py startproject mySite 将会产生以下文件: mySite/    manage.py    mySite/        __init_ ...

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

    URLconf Django通过URLconf来响应网页请求,在项目设置settings.py中,设定了ROOT_URLCONF值来指定默认的URLconf(即mysite.urls),当HTTPRe ...

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

    Variables 在模板中,使用两个大括号包含变量的方式来使用变量: {{ name }} 该变量应该作为键值对中的键,在Context中能被查找到. Tags 模板中使用Tags来进行简单的逻辑: ...

  4. Django学习日记04_模板_overview

    通过Django中的模板,使得设计人员和网站管理有一个对接的接口,实现网页设计和逻辑的分离,因此,模板会处理大量的文本解析内容,django中内部使用了高效的引擎来完成模板解析. 模板设置 在使用模板 ...

  5. Django学习日记03_模型_Fields

    创建模型 模型对应工程中的应用,一个工程可能包含很多的应用,通过命令 python manage.py startapp myapp 创建一个叫myapp的应用,django会帮助生成以下目录: po ...

  6. Django学习日记01_环境搭建

    1. 使用Vagrant 创建ubuntu虚拟机: 首先安装vagrant,网上有比较多的方法,如:http://www.th7.cn/system/mac/201405/55421.shtml 我使 ...

  7. Linux学习日记-使用EF6 Code First(四)

    一.在linux上使用EF 开发环境 VS2013+mono 3.10.0 +EF 6.1.0 先检测一下EF是不是6的 如果不是  请参阅 Linux学习日记-EF6的安装升级(三) 由于我的数据库 ...

  8. 今天主要推荐一下django学习的网址!

    前言:每个月忙碌的头20天后,在上班时间投入到django理论学习的过程中,花了差不多3天时间简单的研究了一下django,着实废了我不少脑细胞. 采用虫师前辈的一张图和话: 如果你把这过程梳理清晰了 ...

  9. Django 学习笔记之四 QuerySet常用方法

    QuerySet是一个可遍历结构,它本质上是一个给定的模型的对象列表,是有序的. 1.建立模型: 2.数据文件(test.txt) 3.文件数据入库(默认的sqlite3) 入库之前执行 数据库同步命 ...

随机推荐

  1. nignx 测试配置文件

    nginx -t nginx: the configuration file /usr/local/nginx-1.2.9/conf/nginx.conf syntax is ok nginx: co ...

  2. 原生Js实现拖拽(适用于pc和移动端)

    效果: HTML和CSS部分 <!DOCTYPE html> <html lang="en"> <head> <meta charset= ...

  3. fiddler+android抓包工具配置使用

    今天临时增加一个工作,手机需要抓包,查看了不同的抓包工具,最后确定使用fiddler抓包工具进行操作,这里以android为例记录一下工具的配置和使用操作. fiddler的安装 网上有很多fiddl ...

  4. SpringCloud高可用Eureka搭建

    网上很多博客写的都是在本地一台机器上面搭建的,我用两台机器来为大家搭建一个注册中心高可用集群 第一步:需要在每一台机器上面搭建一个注册中心. 第二步:编写第一台机器注册中心配置文件 第三步:编写第二台 ...

  5. WebSocket解析

    WebSocket解析 转载请注明出处:WebSocket解析 现在,很多网站为了实现推送技术,所用的技术都是轮询.轮询是指在特定的时间间隔(如每一秒),由浏览器对服务器发起HTTP请求,然后由服务器 ...

  6. 剑指 offer代码解析——面试题39推断平衡二叉树

    题目:输入一颗二叉树的根结点.推断该树是不是平衡二叉树. 假设某二叉树中随意结点的左右子树的高度相差不超过1,那么它就是一棵平衡二叉树. 分析:所谓平衡二叉树就是要确保每一个结点的左子树与右子树的高度 ...

  7. Mac: Android studio+VirtualBox+Genymotion

    针对 Mac Yosemite 10.10.4 操作系统 1.在Android Studio 中preferences 中的Plugins 中安装Genymotion插件. Android Studi ...

  8. BIRT实现组内跨行计算

    问题来源:http://developer.actuate.com/community/forum/index.php?/topic/36160-dealing-with-previous-rows- ...

  9. 游戏AI(三)—行为树优化之基于事件的行为树

    上一篇我们讲到了关于行为树的内存优化,这一篇我们将讲述行为树的另一种优化方法--基于事件的行为树. 问题 在之前的行为树中,我们每帧都要从根节点开始遍历行为树,而目的仅仅是为了得到最近激活的节点,既然 ...

  10. TextMesh Pro 超链接解析失败

    前言 软件环境 Unity3D 5.3.7p4 TextMesh Pro 1.0.555.0b11(Jul 06.2017) UGUI做为UI解决方案 文档资料 TextMesh Pro的资料,可以参 ...