- 浏览: 653037 次
- 性别:
- 来自: 淮安
文章分类
- 全部博客 (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 1460列表解析: 括在方括号 >& ... -
Python 拷贝对象(深拷贝deepcopy与浅拷贝copy)
2012-03-06 22:10 59339转自: http://www.jb51.net/article ... -
Django Meta内部类选项
2012-03-06 00:13 1633转自:http://www.onepub.net/2012/0 ... -
python --- locals()函数
2012-03-02 12:21 1488>>> help(locals) Hel ... -
python __file__ 与相对路径
2012-03-02 11:45 1499转自:http://taoyh163.blog.163.com ... -
python最常用函数
2012-03-02 10:51 6600转自:http://blog.163.com/yang ... -
Python ---- 处理Excel
2012-02-25 12:17 15561. Ubuntu下相关的库的安装: $ sudo ap ... -
python --- Python中的callable 函数
2012-02-25 11:41 8385转自: http://archive.cnblogs. ... -
Python --- __call__ (可调用对象)
2012-02-25 11:41 2161转自: http://hi.baidu.com/feng221 ... -
Python---很强悍的property,绝对的强大
2012-02-25 11:41 28900转自:http://www.cnblogs.com/lovem ... -
什么是po文件?
2012-02-25 11:40 2376转自: http://hi.baidu.com/gre ... -
Python----很强悍的API
2012-02-21 15:26 6991. Python 自带的 gettext 标准模块 & ... -
python ---- 包中的__init__.py具体用法
2012-02-21 10:51 2497The __init__.py files are requi ... -
Python ---- 各种包的收集
2012-02-21 10:52 9981. psutil 是一个 Python模块用来获取正 ... -
Python---我还不知道的寻找他用法的地方
2012-02-21 10:52 9931. exec exec('xx') 可以直接执行xx ... -
Python ---- Sets
2012-02-20 13:06 940Python also includes a data typ ... -
Python---Tuple special characteristics
2012-02-20 10:27 1105A special problem is the constr ... -
python 如此灵活的使用filter, map, reduce, sum
2012-02-18 12:22 2678Functional Programming Tools T ... -
Python表示队列
2012-02-18 11:57 1230It is also possible to use a li ... -
这么酷的lambda用法
2012-02-18 11:12 1043Lambda 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 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的资产管理系统源码】是一套使用Python的Django框架编写的简易资产管理软件教程。这个系统虽然规模不大,但包含了实现一个完整管理系统的必要组件,是学习Django开发的良好实践案例。该项目构建在Django 2.2...
标题与描述中的关键词“Python Web框架”,“Django”,“Python开发Web站点”明确指出了本文档的主题,即使用Python编程语言与Django框架进行Web应用开发。文档内容虽然包含了一些无法解析的[pic]标记,但核心信息...
基于Django的交通设施运维管理系统设计基于Django的交通设施运维管理系统设计基于Django的交通设施运维管理系统设计基于Django的交通设施运维管理系统设计基于Django的交通设施运维管理系统设计基于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...
Python基于Django的旅游信息管理系统源码Python基于Django的旅游信息管理系统源码Python基于Django的旅游信息管理系统源码Python基于Django的旅游信息管理系统源码Python基于Django的旅游信息管理系统源码Python基于...