百度网页版浏览器入口官网,山东seo推广公司,微信商家怎么开通,wordpress 婚庆主题定义模型与管理页 定义模型[models.py]迁移模型向管理注册模型[admin.py]注册模型使用Admin.site.register(模型名)修改Django后台管理的名称定义管理列表页面应用名称修改管理列表添加查询功能 django shell交互式shell会话 认证和授权 定义模型[models.py]
模仿博客形式模块暂定义【标题、作者、时间、正文主题类型】
from django.db import models# Create your models here.
class topic(models.Model):定义文稿的主题类型textmodels.CharField(max_length200)date_addedmodels.DateTimeField(auto_now_addTrue)class Meta:verbose_name主题类型 #数据库表的名称显示verbose_name_plural主题集合 #数据库表的名称集显示def __str__(self):return self.textclass documentes(models.Model):定义文档的结构topicmodels.ForeignKey(topic,on_deletemodels.CASCADE)titlemodels.CharField(max_length30)date_addedmodels.DateTimeField(auto_now_addTrue)authormodels.CharField(max_length20)textmodels.TextField()class Meta:verbose_name文档 #数据库表的名称显示verbose_name_plural文档集合 #数据库表的名称集显示def __str__(self):return self.title对应后台显示 迁移模型
对 app_name调用makemigrations执行Python manage.py makemigrations命令
让django迁移项目migrate执行Python manage.py migrate命令
Python manage.py makemigrations
Python manage.py migrate在生成的文件0001_initial.py中可以看到数据库的修改 向管理注册模型[admin.py]
注册模型使用Admin.site.register(模型名)
from django.contrib import adminfrom baseapps.models import topic,documentes# Register your models here.admin.site.register(topic)
admin.site.register(documentes)进入后台(http://127.0.0.1:8000/admin/)我们可以看到下图 修改Django后台管理的名称
admin.site.site_header 校园管理系统后台
admin.site.site_title 校园管理系统
admin.site.index_title 管理首页页面显示位置为 定义管理列表页面
修改类docAdmin
class docAdmin(admin.ModelAdmin):list_display (title,author,date_added,) # ModelAdmin列表页展示的字段名admin.site.register(documentes,docAdmin) # docAdmin只有注册后才能使用管理列表页变成 应用名称修改
修改apps.py文件添加以下内容verbose_nameu’名称’
verbose_name u文章展示 # 定义应用的名称修改__init__.py文件添加以下内容(也可不添加
default_app_config baseapps.apps.BaseappsConfig管理列表添加查询功能
在admin.py对应的类中,添加search_fields (‘查询对应的字段名’,)
class docAdmin(admin.ModelAdmin):list_display (title,author,date_added,) # ModelAdmin列表页展示的字段名search_fields (title,author,) #添加“标题”与“作者”的查询django shell
输入一些模拟数据查看效果 输入两条数据条目后我们得到 交互式shell会话
python manage.py shell启动一个python解释器通过它我们导入模型使用object.all()来获取所有实例返回的查询集queryset。
(schoolapps) E:\djangoProject\schoolappspython manage.py shell
Python 3.11.0 (main, Oct 24 2022, 18:26:48) [MSC v.1933 64 bit (AMD64)] on win32
Type help, copyright, credits or license for more information.
(InteractiveConsole)from baseapps.models import topictopic.objects.all()
QuerySet [topic: 资讯, topic: 活动]from baseapps.models import documentesdocumentes.objects.all()
QuerySet [documentes: 开放、选择、信任, documentes: 与创新者同行]ntopic.objects.get(id1)n.text
资讯n.date_added
datetime.datetime(2023, 10, 19, 4, 15, 5, 840186, tzinfodatetime.timezone.utc)附每次修改模型后需要重启shell才能看到修改的效果退出快捷键“ctrlZ”
认证和授权
后台设置用户与组的权限用户必须设置为工作人员状态才能登录