7.2 create 创建管理员用户:
python manage.py run server
python manage.py createsuperuser
password :12345678912
7.3 admin.py 注册模型:
from .models import Student,Grade class Register(admin.ModelAdmin):
7.3.1 #列表页属性
list_display 展示数据库字段名称包含字段列
list_filter过滤器过滤根据某个字段
search_fields = ['user_name'] # 查询筛选字段依据字段名称,此字段不可以为外键类列
list_per_page = 2 #数据库分页数量2 row 为一页
# 添加修改页(注意fields和fieldsets不可以同时使用,只能存在以一个)
#排序,只针对可编辑列,展示,对于pk不允许编辑
#fields = ['user_name','is_man','is_delete','stu_id']
#分组属性,列表顺序就是页面展示顺序
fieldsets = [("basic",{"fields":["user_name","is_man"]}),
("junior",{"fields":["is_delete","stu_id"]})] #注册类
admin.site.register(Student,RegisterStudent)
admin.site.register(Grade,RegisterGrade)
7.4关联对象
在admin.py里新建关联对象class并且继承admin.TabularInline类,引入需要被关联的class model,以及关联extra rows数量
class StudentGradeInfo(admin.TabularInline):
# 声明需要关联模型对象属性赋值
model = Student
# 关联几个row
extra = 2
在需要展示引入模型的主模型中引入extra 的model对象:
inlines = [StudentGradeInfo]
页面布尔表达式自定义:
class RegisterStudent(admin.ModelAdmin):
#重新定义属性列展示名称函数
def zh_sex(self):
if self.is_man:
return "True"
else:
return "False" def delete_condition(self):
if self.is_delete:
return "yes"
else:
return "no"
#web展示字段缩写
zh_sex.short_description = "性别"
delete_condition.short_description = "在校"
#动作展示位置调整
actions_on_bottom = True
actions_on_top = False
# check box 选中计数显示,false不显示,true 显示
actions_selection_counter = False
#引入重新定义的展示列为函数对象替换原有字符串如zh_index,delete_condition
list_display = ['pk', 'user_name', zh_sex, 'createObj_date', delete_condition, 'stu_id']
FAQ:
Django 数据库建表的时候 No migrations to apply原因出现和解决
rm -rf 0001_initial.py 进入数据库delete from django_migrations where app="yourapplicationName";
执行: python manage.py makemigrations
python manage.py migrate
检查结果显示success:
Running migrations:
Applying app.0001_initial... OK
one to one
one to many 与主键外键关系
一对一则需要sub table pr和Foreignkey 共用一个字段
一对多,sub table pr 和 Foreignkey 分开
主表的主键最好外键到子表的外键上,不能外键到sub table的pk column
FAQ:主表,sub 表删除顺序:必须先删除子表在删除主表由于子表外附与主键就像橘子皮附着在橘子肉上一样,
想吃橘子必须先去皮,否则报错如下情况:其次如果想删除主表的数据而不是drop表并且继续保留主表sub表数据可以先备份子表再删除主表数据就可以了但是要建立级联删除关系:
需要在创建多对一的关系的,需要在Foreign的第二参数中加入on_delete=models.CASCADE 主外关系键中,级联删除,也就是当删除主表的数据时候从表中的数据也随着一起删除
mysql> drop table app_grade;
ERROR 3730 (HY000): Cannot drop table 'app_grade' referenced by a foreign key constraint 'app_student_stu_id_id_eb16ae0c_fk_app_grade_grade_id' on table 'app_student'.
mysql> drop table app_student;
Query OK, 0 rows affected (0.02 sec)
mysql> drop table app_grade;
Query OK, 0 rows affected (0.07 sec)

  

django 创建管理员用户的更多相关文章

  1. Django 创建超级用户

    Django自带的后台管理是Django明显特色之一,可以让我们快速便捷管理数据.后台管理可以在各个app的admin.py文件中进行控制 #创建超级用户 python manage.py creat ...

  2. django创建超级用户

    终端输入 python3 manage.py createsuperuser 按照提示进行操作即可 不输入用户名会给你默认一个用户名,输入密码是在原处不动的,其实已经在输入了. 创建超级用户是为了能够 ...

  3. 工作小记[csv文件、admin中filed与list_display区别、ModuleNotFoundError: No module named'xxx'、django创建admin用户]

    CSV-Comma Separated Values,CSV文件可以直接用Excel表格打开,如果用文本打开属性之间用逗号隔开,Python有直接操作CSV文件的函数. fileds字段控制“修改添加 ...

  4. Django模型与创建管理员用户

    默认情况下, 配置使用SQLite:

  5. Django创建管理员账号

    python manage.py createsuperuser 创建一个管理员账号 输入账号:admin 输入邮箱:123456789@qq.com 输入密码:test123456 二次确认 pyt ...

  6. Django创建超级用户出现错误

    如果运行python manage.py createsuperuser出现一大堆错误代码 解决方案: 1.检查settings.py中的DATABASE配置确定正确性 2.执行python mana ...

  7. mongodb创建管理员用户

    db.createUser({user: "admin",pwd: "xxx",roles: ["root"]});

  8. django系列4 :创建管理员

    以下复制粘贴自官网 创建管理员用户¶ 首先,我们需要创建一个可以登录管理站点的用户.运行以下命令: /  $ python manage.py createsuperuser 输入所需的用户名, ...

  9. SqlServer:SqlServer(服务器磁盘监控,创建管理员账号分配权,添加链接服务器,查询CPU,查询内存)

    1.服务器磁盘监控 (1)总链接服务上开启所有链接服务器的RPC: ----------------------总链接服务器上面,开启每个服务器的RPC --exec sp_serveroption ...

随机推荐

  1. static静态不是很静

    在类中定义变量时,不会开辟存储空间,只有类定义一个对象时才会开辟类中成员变量的内存空间,且建立一个对象开辟一次,大小与类中的成员变量及函数有关.而static在静态区开辟内存空间,不占用内存空间. 1 ...

  2. Windows系统对拍程序

    Windows系统对拍程序,其中包含c++11用法,请使用c++11标准编译.此对拍程序会在发现错误时显示错误行号以及对应内容,方便比对. 此对拍程序自动使用g++对源代码进行编译.如果出现找不到g+ ...

  3. git push出错的解决办法

    今天push代码到线上的时候怎么都不行,尝试了很多办法报了好几种错比如: 反正就是各种错,然后其实不管什么错,你全部Git init 一下然后重新配置 git config --global user ...

  4. An easy problem(位运算)

    As we known, data stored in the computers is in binary form.(数据以二进制形式存储于电脑之中.)The problem we discuss ...

  5. 搭建Hexo实现个人网站详细教程

    全网最全小白搭建Hexo+Gitee/Coding/Github 全网最全小白搭建Hexo+Gitee/Coding/Github 本站内容已全部转移到https://www.myyuns.ltd,具 ...

  6. MySql -- unique唯一约束

    3.UNIQUE 约束 约束唯一标识数据库表中的每条记录. 创建一张测试表 CREATE TABLE `test`.`info`( `id` ) UNSIGNED NOT NULL AUTO_INCR ...

  7. 在Linux系统上安装配置ant环境

    1.从官网http://ant.apache.org/bindownload.cgi下载tar.gz版ant到本地电脑上 2.通过WinSCP工具将本地电脑上的ant压缩包上传至Linux服务器的/u ...

  8. Python | 字符串拆分和拼接及常用操作

    一.字符串拆分 str = "hola ha1 ha2 china ha3 " # partition 从左侧找到第一个目标,切割成三组数据的[元组] str1 = str.par ...

  9. CSP2019第一轮游记

    Day -1 发现还有\(2\)天就初赛了\((?)\) 赶紧复习\(ing\) 然后基础知识基本上都不知道 后面的大题--全靠蒙 感觉第一轮就要\(\mathrm{AFO}\)啊\(QwQ\) Da ...

  10. E. Vus the Cossack and a Field (求一有规律矩形区域值) (有一结论待证)

    E. Vus the Cossack and a Field (求一有规律矩形区域值) 题意:给出一个原01矩阵,它按照以下规则拓展:向右和下拓展一个相同大小的 0 1 分别和原矩阵对应位置相反的矩阵 ...