Django常用配置admin界面等
2017-09-14 14:25
591 查看
'django.contrib.admin',
使用south管理数据库
python manage.py schemamigration polls --auto python manage.py migrate polls
设置
mysite/urls.py
from django.contrib import admin admin.autodiscover() urlpatterns = patterns('', ... url(r'^admin/', include(admin.site.urls)),
启动服务器
python manage.py runserver访问地址 http://127.0.0.1:8000/admin/
增加 poll
增加 polls/admin.py
from django.contrib import admin from polls.models import Poll admin.site.register(Poll)
定制管理界面(更改顺序)
a. 定义一个ModelAdmin类对象 b. 把该对象作为注册的第2个参数 class PollAdmin(admin.ModelAdmin): fields = ['pub_date', 'question'] admin.site.register(Poll, PollAdmin)
定制管理界面(分组)
class PollAdmin(admin.ModelAdmin): fieldsets = [ (None, {'fields': ['question']}), ('Date information', {'fields': ['pub_date']}), ]
定制管理界面(折叠)
class PollAdmin(admin.ModelAdmin): ... ('日期信息', {'fields': ['pub_date'], 'classes': ['collapse']}),
增加Choice
内联方式from django.contrib import admin from polls.models import Choice, Poll class ChoiceInline(admin.StackedInline): model = Choice extra = 3 class PollAdmin(admin.ModelAdmin): fieldsets = [ (None, {'fields': ['question']}), ('Date information', {'fields': ['pub_date'], 'classes': ['collapse']}), ] inlines = [ChoiceInline] admin.site.register(Poll, PollAdmin)
表格方式
class ChoiceInline(admin.TabularInline):
定制列表的管理界面
普通显示多列class PollAdmin(admin.ModelAdmin): # ... list_display = ('question', 'pub_date', 'was_published_recently')
方法设置属性
was_published_recently.admin_order_field = 'pub_date' was_published_recently.boolean = True was_published_recently.short_description = '是否最近发布'
增加一个过滤器
list_filter = ['pub_date']
增加搜索栏
search_fields = ['question']
日期分层过滤
date_hierarchy = 'pub_date'
完整的 PollAdmin 类
class PollAdmin(admin.ModelAdmin): fieldsets = [ (None, {'fields': ['question']}), ('日期信息', {'fields': ['pub_date'], 'classes': ['c b2d5 ollapse']}), ] inlines = [ChoiceInline] list_display = ('question', 'pub_date', 'was_published_recently') list_filter = ['pub_date'] search_fields = ['question'] date_hierarchy = 'pub_date'
定制个人的项目模版
1.建立模版路径并增加到 settings.py 中
1.1 django 的源文件在哪里?python -c " import sys sys.path = sys.path[1:] import django print(django.__path__)"
比如我的 virtualenvs 环境的django 的输出结果就是:
~/.virtualenvs/djtest/local/lib/python2.7/site-packages/django
1.2 建立一个项目模版目录并拷贝模版
在项目目录建立一个模版路径 templates,现在路径结果:
~/djtest/mysite |---mysite |---polls | |---migrations |---templates | |---admin
从
~/.virtualenvs/djtest/local/lib/python2.7/site-packages/django/contrib/admin/templates/admin
cp base_site.html ~/djtest/mysite/templates/admin/
1.3 更改 settings.py,增加模版的搜索路径
TEMPLATE_DIRS = ( '/home/***/djtest/mysite/templates/' )
相关文章推荐
- 解决 django1.2环境中使用自带的admin管理界面,配置后访问出现“你无权限修改任何东西” 的问题
- django中admin后台界面的英文修改为中文显示
- django URL常用配置方法
- 配置ubuntu django服务器及常用包
- Django中admin后台管理常用设置系列之十六
- Django admin界面丢失CSS解决办法
- 5 Django系列之通过list_display展示多对多与外键内容在admin-web界面下
- django+nginx部署中由于nginx配置导致的admin管理样式缺失的问题
- django中admin管理的使用和配置
- python django web 管理界面admin工具简单部署
- centos 下 django 1.8 配置好后 admin 后台无法显示 样式解决办法
- django项目配置使用django-admin-tools
- 【django+xadmin实战】0130笔记——admin的配置
- 解决Django Admin管理界面样式表(CSS Style)丢失问题
- 配置django中自建应用(application)的显示名称以及系统应用admin和auth的名称
- Django的admin配置
- django admin 界面标题更改
- Django 采用bootstrap-admin的界面部署
- django学习笔记:AdminSite界面配置
- django后台admin的配置