Django框架的使用教程--站点的管理[七]
2018-07-06 01:20:00来源:博客园 阅读 ()
Django的站点管理
创建超级管理员命令(密码要8位)
python manage.py createsuperuser
进入站点管理
注册模型类
from django.contrib import admin # Register your models here. from django.contrib import admin from django_test.models import GameInfo admin.site.register(GameInfo)
运行结果(可以直接在站点管理添加数据)
admin.py代码
from django.contrib import admin # Register your models here. from django.contrib import admin from django_test.models import GameInfo # 第一种自定义的站点管理的方法 # class GameInfoAdmin(admin.ModelAdmin): # list_per_page = 2 # # # 注册自定义的站点管理类 # admin.site.register(GameInfo, GameInfoAdmin) # 装饰器的自定义站点管理方法 @admin.register(GameInfo) class GameInfoAdmin(admin.ModelAdmin): list_per_page = 2
分页
list_per_page = 2
设置顶部和底部显示
actions_on_top = True
actions_on_bottom = True
自定义显示地段
list_display = ['id', 'gtitle', 'game_date','game_download']
右侧栏过滤器
list_filter = ['id','gtitle']
搜索框
search_fields = ['id']
调整页面的编辑展示
fields = ['gtitle','game_date']
分组显示
fieldsets = ( ('基本', {'fields': ['gtitle', 'game_date']}), ('高级', { 'fields': ['game_download', 'gcommnet'], 'classes': ('collapse',) # 是否折叠显示 }) )
关联对象
admin.py中创建一个HeroInfoInline类
class HeroInfoInline(admin.StackedInline):
# 要编辑的对象 model = HeroInfo
# 要附加的编辑数量 extra = 1
admin.py中的GameInfoAdmin类添加
inlines = [HeroInfoInline]
运行结果
可以用表格的形式嵌入
class HeroInfoInline(admin.TabularInline): model = HeroInfo extra = 1
运行结果
调整站点信息
- admin.site.site_header 设置网站页头
- admin.site.site_title 设置页面标题
- admin.site.index_title 设置首页标语
admin.site.site_header = '游戏中心' admin.site.site_title = 'tx游戏' admin.site.index_title = '欢迎来到tx游戏'
运行结果
每个应用设置独立的名字
在apps.py中设置应用设置的名字
代码
from django.apps import AppConfig class DjangoTestConfig(AppConfig): name = 'django_test' verbose_name = '游戏中心'
运行结果
admin.py代码
from django.contrib import admin # Register your models here. from django.contrib import admin from django_test.models import GameInfo,HeroInfo # 第一种自定义的站点管理的方法 # class GameInfoAdmin(admin.ModelAdmin): # list_per_page = 2 # # # 注册自定义的站点管理类 # admin.site.register(GameInfo, GameInfoAdmin) class HeroInfoInline(admin.TabularInline): model = HeroInfo extra = 1 # 装饰器的自定义站点管理方法 @admin.register(GameInfo) class GameInfoAdmin(admin.ModelAdmin): # 分页 list_per_page = 2 # 设置顶部和底部 actions_on_bottom = True actions_on_top = True # 自定义显示的字段 list_display = ['id', 'gtitle', 'game_date','game_download'] # 过滤器 list_filter = ['id','gtitle'] # 搜索框 search_fields = ['id'] # 编辑显示字段 # fields = ['gtitle','game_date'] # 分组显示 fieldsets = ( ('基本', {'fields': ['gtitle', 'game_date']}), ('高级', { 'fields': ['game_download', 'gcommnet'], 'classes': ('collapse',) # 是否折叠显示 }) ) inlines = [HeroInfoInline] @admin.register(HeroInfo) class HeroInfoAdmin(admin.ModelAdmin): pass admin.site.site_header = '游戏中心' admin.site.site_title = 'tx游戏' admin.site.index_title = '欢迎来到tx游戏'
上传图片
安装图片操作包
pip install Pillow
配置
模型类添加图片字段
# Django是主目录或者自定义其他目录(static_files)
image = models.ImageField(upload_to='Django', verbose_name='图片' ,null=True)
结果
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
下一篇:创建sum求多元素的和
- Django项目中使用qq第三方登录。 2019-08-13
- Python连载30-多线程之进程&线程&线程使用 2019-08-13
- Python学习日记(十) 生成器和迭代器 2019-08-13
- 【Python】语法基础 | 开始使用Python 2019-08-13
- 使用scrapy框架爬取全书网书籍信息。 2019-08-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash