- 浏览: 654555 次
- 性别:
- 来自: 淮安
文章分类
- 全部博客 (260)
- Java (0)
- vim (9)
- python (86)
- AdobePDF (2)
- mysql (10)
- Emacs (12)
- JavaScript (18)
- postgresql (2)
- windows (4)
- Eclipse (1)
- debian (4)
- 浏览器 (2)
- html (1)
- rhel (1)
- Linux (4)
- SVN (2)
- Ruby (30)
- ERP (8)
- my_linux_config (2)
- C++ (2)
- CentOS (5)
- Ubuntu (12)
- httpd (3)
- nginx (1)
- CSS (1)
- Agile (1)
- C (3)
- Redmine (2)
- 面试题 (1)
- 收集 (7)
- 架构 (1)
- 服务器 (2)
- logarithms (1)
- 数学 (1)
最新评论
-
hymzjsw:
python 变量命名规范 -
IWSo:
...
mysql #1170错误(42000) BLOB/TEXT Column Used in Key Specification Without a Key Le -
wl59138528:
由于Python臭名昭著的GIL问题,OpenERP 6.1以 ...
OpenERP 部署环境使用说明 -
greybeard:
xiaoyao3857 写道怎么看着一大堆,似乎中间有些东西重 ...
python 变量命名规范 -
xiaoyao3857:
怎么看着一大堆,似乎中间有些东西重复说了吧
python 变量命名规范
1. Django自动管理工具是django.contrib的一部分。
管理工具,从技术层面上讲,它被称作django.contrib.admin。
django.contrib中其它可用的特性,如用户鉴别系统(django.contrib.auth), 支持
匿名会话(django.contrib.sessioins)以及用户评注系统
(django.contrib.comments)。
2. 激活管理界面
$ pwd
/home/tony/djcode/mysite
$ vim settings.py
生成管理界面使用的数据库表:
创建一个admin的用户帐号:
将admin访问配置在URLconf(在urls.py中):
$ vim urls.py
启动开发服务器
$ python manage.py runserver 8080
访问:
http://localhost:8080/admin/
3. 配置本地化语言显示:
$ vim settings.py
4. 将自己的Models添加到Admin管理中:
$ cd books
$ pwd
/home/tony/djcode/mysite/books
$ vim admin.py
重启服务
$ CTRL + C
$ python manage.py runserver 8080
访问:
http://localhost:8080/admin/
发现Books已经被添加了进来。
5. 设置字段可选:
例Authors:
$ vim models.py
一般情况下blank=Ture就可以指明字段是可选的,但对于日期型(DateField,
TimeField, DateTimeField)或数字型(IntegerField,DecimalField,
FloatField)需要使用null=True和blank=True。
6. 自定义字段标签
$ vim models.py
重启服务器,发现修改生效。
7. 自定义列表:
$ vim admin.py
刷新页面,发现Author显示了3列,不再是当初的一列了。
添加快速查询栏
$ vim admin.py
过滤器:
另一种过滤器:
改变默认的排序方式:
8. 自定义编辑表单
多对对的编辑页面:
下拉框改变为多选框:
管理工具,从技术层面上讲,它被称作django.contrib.admin。
django.contrib中其它可用的特性,如用户鉴别系统(django.contrib.auth), 支持
匿名会话(django.contrib.sessioins)以及用户评注系统
(django.contrib.comments)。
2. 激活管理界面
$ pwd
/home/tony/djcode/mysite
$ vim settings.py
INSTALLED_APPS = ( 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.messages', 'django.contrib.staticfiles', # Uncomment the next line to enable the admin: 'django.contrib.admin', # Uncomment the next line to enable admin documentation: 'django.contrib.admindocs', 'mysite.books', )
MIDDLEWARE_CLASSES = ( 'django.middleware.common.CommonMiddleware', #'django.middleware.locale.LocaleMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', )
生成管理界面使用的数据库表:
$ python manage.py syncdb
创建一个admin的用户帐号:
$ python manage.py createsuperuser
将admin访问配置在URLconf(在urls.py中):
$ vim urls.py
from django.conf.urls.defaults import patterns, include, url # Uncomment the next two lines to enable the admin: from django.contrib import admin admin.autodiscover() urlpatterns = patterns('', # Uncomment the admin/doc line below to enable admin documentation: (r'^admin/doc/', include('django.contrib.admindocs.urls')), # Uncomment the next line to enable the admin: (r'^admin/', include(admin.site.urls)), )
启动开发服务器
$ python manage.py runserver 8080
访问:
http://localhost:8080/admin/
3. 配置本地化语言显示:
$ vim settings.py
MIDDLEWARE_CLASSES = ( 'django.middleware.common.CommonMiddleware', # 添加了这句话,界面可以显示中文了 'django.middleware.locale.LocaleMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', )
4. 将自己的Models添加到Admin管理中:
$ cd books
$ pwd
/home/tony/djcode/mysite/books
$ vim admin.py
from django.contrib import admin from mysite.books.models import Publisher, Author, Book admin.site.register(Publisher) admin.site.register(Author) admin.site.register(Book)
重启服务
$ CTRL + C
$ python manage.py runserver 8080
访问:
http://localhost:8080/admin/
发现Books已经被添加了进来。
5. 设置字段可选:
例Authors:
$ vim models.py
class Author(models.Model): first_name = models.CharField(max_length=30) last_name = models.CharField(max_length=40) # 建对象时,指定了email,blank=True, null=True,即这个字段是可选的 email = models.EmailField(blank=True, null=True,) def __unicode__(self): return u'%s%s'% (self.first_name, self.last_name)
一般情况下blank=Ture就可以指明字段是可选的,但对于日期型(DateField,
TimeField, DateTimeField)或数字型(IntegerField,DecimalField,
FloatField)需要使用null=True和blank=True。
6. 自定义字段标签
$ vim models.py
class Author(models.Model): first_name = models.CharField(max_length=30) last_name = models.CharField(max_length=40) # 建对象时,指定了verbose_name, 那么在admin那边显示的会是 # verbose_name中指定的名字,而不再是Email。 email = models.EmailField(blank=True, null=True, \ verbose_name='e-mail')
重启服务器,发现修改生效。
7. 自定义列表:
$ vim admin.py
from django.contrib import admin from mysite.books.models import Publisher, Author, Book class AuthorAdmin(admin.ModelAdmin): # 显示了list_display里面的几列 list_display=('first_name', 'last_name', 'email') class BookAdmin(admin.ModelAdmin): list_display=('title', 'publisher', 'publication_date',) admin.site.register(Publisher) admin.site.register(Author, AuthorAdmin) admin.site.register(Book,BookAdmin)
刷新页面,发现Author显示了3列,不再是当初的一列了。
添加快速查询栏
$ vim admin.py
class AuthorAdmin(admin.ModelAdmin): list_display=('first_name', 'last_name', 'email') # 发现页面的头部多了一个查询 search_fields=('first_name', 'last_name')
过滤器:
class BookAdmin(admin.ModelAdmin): list_display=('title', 'publisher', 'publication_date',) # list_filter,发现了页面的右边多了一个publication date 过滤器 list_filter = ('publication_date',)
另一种过滤器:
class BookAdmin(admin.ModelAdmin): list_display=('title', 'publisher', 'publication_date',) list_filter = ('publication_date',) # date_hierachy 发现了页面的头部多了一个时间的过滤器 date_hierarchy = 'publication_date'
改变默认的排序方式:
class BookAdmin(admin.ModelAdmin): list_display=('title', 'publisher', 'publication_date',) list_filter = ('publication_date',) date_hierarchy = 'publication_date' # ordering, 发现头部显示的Publication date多了一个向下的箭头 # 可以点击箭头,重新排序 ordering=('-publication_date',)
8. 自定义编辑表单
class BookAdmin(admin.ModelAdmin): list_display=('title', 'publisher', 'publication_date',) list_filter = ('publication_date',) date_hierarchy = 'publication_date' ordering=('-publication_date',) # 点击Book进入编辑的时候,发现没有publication_date编辑项 fields=('title', 'authors', 'publisher',)
多对对的编辑页面:
class BookAdmin(admin.ModelAdmin): list_display=('title', 'publisher', 'publication_date',) list_filter = ('publication_date',) date_hierarchy = 'publication_date' ordering=('-publication_date',) # fields=('title', 'authors', 'publisher',) # 点击进入编辑的时候,发现了Author当初的多选框,变成了一个精巧的 # JavaScript过滤器, 是水平排列的,可以实现全选,不选 filter_horizontal=('authors',)
class BookAdmin(admin.ModelAdmin): list_display=('title', 'publisher', 'publication_date',) list_filter = ('publication_date',) date_hierarchy = 'publication_date' ordering=('-publication_date',) # fields=('title', 'authors', 'publisher',) #filter_horizontal=('authors',) # filter_vertical和filter_horizontal功能一样,只不过显示为垂直方向 filter_vertical=('authors',)
下拉框改变为多选框:
class BookAdmin(admin.ModelAdmin): list_display=('title', 'publisher', 'publication_date',) list_filter = ('publication_date',) date_hierarchy = 'publication_date' ordering=('-publication_date',) # fields=('title', 'authors', 'publisher',) filter_horizontal=('authors',) #filter_vertical=('authors',) # raw_id_fields,当初的下拉框对于很多publisher的时候,一定不是 # 很使用的,现在变成了多选框,方便了许多。 raw_id_fields=('publisher',)
发表评论
-
列表解析和生成器表达式
2012-06-06 08:14 1477列表解析: 括在方括号 >& ... -
Python 拷贝对象(深拷贝deepcopy与浅拷贝copy)
2012-03-06 22:10 59354转自: http://www.jb51.net/article ... -
Django Meta内部类选项
2012-03-06 00:13 1634转自:http://www.onepub.net/2012/0 ... -
python --- locals()函数
2012-03-02 12:21 1491>>> help(locals) Hel ... -
python __file__ 与相对路径
2012-03-02 11:45 1504转自:http://taoyh163.blog.163.com ... -
python最常用函数
2012-03-02 10:51 6606转自:http://blog.163.com/yang ... -
Python ---- 处理Excel
2012-02-25 12:17 15581. Ubuntu下相关的库的安装: $ sudo ap ... -
python --- Python中的callable 函数
2012-02-25 11:41 8390转自: http://archive.cnblogs. ... -
Python --- __call__ (可调用对象)
2012-02-25 11:41 2165转自: http://hi.baidu.com/feng221 ... -
Python---很强悍的property,绝对的强大
2012-02-25 11:41 28910转自:http://www.cnblogs.com/lovem ... -
什么是po文件?
2012-02-25 11:40 2380转自: http://hi.baidu.com/gre ... -
Python----很强悍的API
2012-02-21 15:26 7181. Python 自带的 gettext 标准模块 & ... -
python ---- 包中的__init__.py具体用法
2012-02-21 10:51 2507The __init__.py files are requi ... -
Python ---- 各种包的收集
2012-02-21 10:52 10121. psutil 是一个 Python模块用来获取正 ... -
Python---我还不知道的寻找他用法的地方
2012-02-21 10:52 10101. exec exec('xx') 可以直接执行xx ... -
Python ---- Sets
2012-02-20 13:06 943Python also includes a data typ ... -
Python---Tuple special characteristics
2012-02-20 10:27 1110A special problem is the constr ... -
python 如此灵活的使用filter, map, reduce, sum
2012-02-18 12:22 2686Functional Programming Tools T ... -
Python表示队列
2012-02-18 11:57 1236It is also possible to use a li ... -
这么酷的lambda用法
2012-02-18 11:12 1046Lambda Forms By popular demand ...
相关推荐
Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统...
Python基于Django学生宿舍管理系统源码 Python基于Django学生宿舍管理系统源码 Python基于Django学生宿舍管理系统源码 Python基于Django学生宿舍管理系统源码 Python基于Django学生宿舍管理系统源码 Python基于...
Python基于Django的图书管理系统源码 Python基于Django的图书管理系统源码 Python基于Django的图书管理系统源码 Python基于Django的图书管理系统源码 Python基于Django的图书管理系统源码 Python基于...
【Django的资产管理系统源码】是一套使用Python的Django框架编写的简易资产管理软件教程。这个系统虽然规模不大,但包含了实现一个完整管理系统的必要组件,是学习Django开发的良好实践案例。该项目构建在Django 2.2...
基于DJango开发的仓库管理系统,软件架构:python 3.5、django 2.2、MySQL 基于DJango开发的仓库管理系统,软件架构:python 3.5、django 2.2、MySQL 基于DJango开发的仓库管理系统,软件架构:python 3.5、...
基于django的超市管理系统基于django的超市管理系统基于django的超市管理系统基于django的超市管理系统基于django的超市管理系统基于django的超市管理系统基于django的超市管理系统基于django的超市管理系统基于...
Django开发的一个简单的员工管理系统源码 Django开发的一个简单的员工管理系统源码 Django开发的一个简单的员工管理系统源码 Django开发的一个简单的员工管理系统源码 Django开发的一个简单的员工管理系统...
基于Django的图书管理系统源码+数据库,基于Django的图书管理系统源码+数据库基于Django的图书管理系统源码+数据库基于Django的图书管理系统源码+数据库基于Django的图书管理系统源码+数据库基于Django的图书管理...
标题与描述中的关键词“Python Web框架”,“Django”,“Python开发Web站点”明确指出了本文档的主题,即使用Python编程语言与Django框架进行Web应用开发。文档内容虽然包含了一些无法解析的[pic]标记,但核心信息...
基于Django的交通设施运维管理系统设计基于Django的交通设施运维管理系统设计基于Django的交通设施运维管理系统设计基于Django的交通设施运维管理系统设计基于Django的交通设施运维管理系统设计基于Django的交通设施...
Python基于Django框架实现的一个学生信息管理系统源码 Python基于Django框架实现的一个学生信息管理系统源码 Python基于Django框架实现的一个学生信息管理系统源码 Python基于...
python期末大作业基于Django的学生成绩管理系统源码python期末大作业基于Django的学生成绩管理系统源码python期末大作业基于Django的学生成绩管理系统源码python期末大作业基于Django的学生成绩管理系统源码python...
Django入门新闻管理系统。入门的,新手可以看下哈。。。 ================================================== Django的环境: Python的安装: python-2.7.1.msi Django的安装: 去djangoproject.com下载最新的版本...
使用Django框架开发的企业OA管理系统源码 使用Django框架开发的企业OA管理系统源码 使用Django框架开发的企业OA管理系统源码 使用Django框架开发的企业OA管理系统源码 使用Django框架开发的企业OA管理系统源码 ...
- 资产管理 - 操作管理 CMDB - 运维自动化基础 - 资产管理 运行环境: python 2,7 依赖的包如下: beautifulsoup4 4.6.3 bootstrap-admin 0.3.9 bs4 0.0.1 Django 1.11.15 django-appconf 1.0.2 django-...
基于Django开发的企业管理信息系统,包含了OA、销售管理、采购管理、库存管理、项目管理、文档管理以及组织管理模块。 基于Django开发的企业管理信息系统,包含了OA、销售管理、采购管理、库存管理、项目...
基于 vue + django 的二手图书管理系统源码 基于 vue + django 的二手图书管理系统源码 基于 vue + django 的二手图书管理系统源码 基于 vue + django 的二手图书管理系统源码 基于 vue + django 的二手图书...
Chapter 2: The Optimal Django Environment Setup Chapter 3: How to Lay Out Django Projects Chapter 4: Fundamentals of Django App Design Chapter 5: Settings and Requirements Files Chapter 6: Model Best ...
Python基于Django框架的文档管理系统源码是一个用于创建、存储和管理文档的Web应用程序,它利用了Python的强大功能和Django框架的高效开发特性。Django是一个开源的、基于模型-视图-控制器(MVC)设计模式的高级Web...
《基于Django的教务信息管理系统详解》 在信息技术飞速发展的今天,教务管理系统的构建对于提升教育机构的工作效率和管理水平具有重要意义。本系统基于Python的Web开发框架Django,实现了全面、高效的教务信息管理...