Django: 后台常用操作
指定状态码
return JsonResponse(data, status=201)
Djano删除数据库
删除对应数据库后,删除对应文件
删除对应的记录
Django后台管理
创建超级管理员
python manage.py createsuperuser
在后台中管理数据模型
# admin.py
from django.contrib import admin
from JiLian.models import UserModel, Address
admin.site.register(UserModel)
admin.site.register(Address)
在后台中查看数据
class UserModel(models.Model):
u_name = models.CharField(max_length=16, unique=True)
u_password = models.CharField(max_length=256)
# 以下代码,可以在后台中看到数据
def __str__(self):
return self.u_name
class Address(models.Model):
a_address = models.CharField(max_length=128)
a_user = models.ForeignKey(UserModel, on_delete=models.CASCADE, null=True, blank=True, related_name='address_list')
def __str__(self):
return self.a_address
个性化站点管理
若感觉默认的站点样式不能满足应用需求,则可以通过继承Django定义的管理员数据模型,模板,站点类来开发出个性化的管理员站点。注册的时候添加自己的管理类
# admin.py
# 创建管理类
class StudentAdmin(admin.ModelAdmin):
# 规则
pass
# 注册管理类
admin.site.register(Students,StudentAdmin)
#显示规则
list_display 显示字段
list_filter 过滤字段
search_fields 搜索字段
list_per_page 分页,每页多少条数据
orderng 排序规则
分组显示
fieldsets = (
('班级', {fields:('sgrade')}),
('姓名',{fields:('sname')}),
)
# 修改规则
fields 显示字段
exclude 不显示的字段
筛选字段
class UserAdmin(admin.ModelAdmin):
# 筛选字段
list_filter = 'u_name', 'u_password'
admin.site.register(UserModel, UserAdmin)
搜索字段
class UserAdmin(admin.ModelAdmin):
# list_display 显示字段
list_filter = 'u_name', 'u_password'
# 搜索字段
search_fields = 'u_name',
pass
admin.site.register(UserModel, UserAdmin)
自定义显示字段
class UserAdmin(admin.ModelAdmin):
# list_display 显示字段
list_display = 'u_name', 'u_password'
# 筛选字段
list_filter = 'u_name', 'u_password'
# 搜索字段
search_fields = 'u_name',
pass
admin.site.register(UserModel, UserAdmin)
分页显示
class UserAdmin(admin.ModelAdmin):
# list_display 显示字段
list_display = 'u_name', 'u_password'
# 筛选字段
list_filter = 'u_name', 'u_password'
# 搜索字段
search_fields = 'u_name',
# 每页显示三条
list_per_page = 3
pass
admin.site.register(UserModel, UserAdmin)
分组显示
class StudentAdmin(admin.ModelAdmin):
def sex(self):
if self.s_sex:
return '男'
else:
return '女'
sex.short_description = '性别'
list_display = 's_name', 's_age', sex
# 分组显示
fieldsets = (
('基本信息', {'fields': ('s_name', 's_age', 's_sex')}),
('可选信息', {'fields': ('s_height', 's_weight')}),
)
admin.site.register(Student, StudentAdmin)
级联显示
class StudentInfo(admin.TabularInline):
extra = 3
model = Student
class GradeAdmin(admin.ModelAdmin):
list_display = 'g_name', 'g_postion'
inlines = [StudentInfo]
自定义后台管理模板
覆盖系统模板的方式,在django/contrib/admin/templates/admin中,将需要重新定制的文件复制出来,在自己的工程中创建相对应的子目录,在settings.py中注入模板路径,子模板继承子复制的模板添加自己的代码。
自定义登录页面
原始文件路径:
E:\WorkSpace\python_xnhj\HelloRest\Lib\site-packages\django\contrib\admin\templates\admin\login.html
在templates文件夹中新建\admin\login.html
Django后台模板
https://github.com/vinta/awesome-python#admin-panels
Django: 后台常用操作的更多相关文章
- django 视图常用操作
获取参数. 类型是QueryDict https://www.cnblogs.com/zhaoyang-1989/p/11989515.html request.POST.get('参数名') req ...
- python运维开发(十九)----Django后台表单验证、session、cookie、model操作
内容目录: Django后台表单验证 CSRF加密传输 session.cookie model数据库操作 Django后台Form表单验证 Django中Form一般有2种功能: 1.用于做用户提交 ...
- Django---ORM的常用字段和自定义字段,DjangoORM字段与数据库类型对应,字段参数和Meta的参数,Django的admin操作,13中orm操作方法,单标的双下方法
Django---ORM的常用字段和自定义字段,DjangoORM字段与数据库类型对应,字段参数和Meta的参数,Django的admin操作,13中orm操作方法,单标的双下方法 一丶ORM常用字段 ...
- Django后台管理界面
之前的几篇记录了模板视图.模型等页面展示的相关内容,这篇主要写一下后台admin管理界面的内容. 激活管理界面 Django管理站点完全是可选择的,之前我们是把这些功能给屏蔽掉了.记得上篇中Djang ...
- 强大的Django后台管理
Django 后台 django的后台我们只要加少些代码,就可以实现强大的功能.与后台相关文件:每个app中的 admin.py 文件与后台相关 下面示例是做一个后台添加博客文章的例子: 新建一个 名 ...
- Django的基础操作总结
1:准备开始 建立一个新的project: django-admin.py startproject XXXXXX(名称) 建立一个新的App:python manage.py startapp XX ...
- Django orm常用字段和字段参数
1.Object Relational Mapping(ORM) 1.1ORM介绍 ORM概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象 ...
- 【Redis使用系列】Redis常用操作
一.string类型的常用命令 set key value #一个key对应一个value.多次赋值,会覆盖前面. setnx key value #如果key存在则创建key1,并返回1,如果 ...
- Django—models相关操作
一.在django后台admin管理页面添加自己增加的表结构 通过终端命令:python3 manage.py makemigrations, python3 manage.py migrate 我们 ...
- ORM常用操作
一般操作 专业官网文档 必会13条查询 <> all(): 查询所有结果 <> filter(**kwargs): 它包含了与所给筛选条件相匹配的对象 <> get ...
随机推荐
- ES6 新增数组,对象,字符串的方法
1,ES6+ 新增数组方法 Array.from Array Array.from(arrayLike[, mapFn[, thisArg]]) 将类数组(伪数组)转换成数组 参数: arrayLik ...
- 2021-12-16:给定两个数a和b, 第1轮,把1选择给a或者b, 第2轮,把2选择给a或者b, ... 第i轮,把i选择给a或者b。 想让a和b的值一样大,请问至少需要多少轮? 来自字节跳动。
2021-12-16:给定两个数a和b, 第1轮,把1选择给a或者b, 第2轮,把2选择给a或者b, - 第i轮,把i选择给a或者b. 想让a和b的值一样大,请问至少需要多少轮? 来自字节跳动. 答案 ...
- 2021-09-22:请你判断一个 9x9 的数独是否有效。只需要 根据以下规则 ,验证已经填入的数字是否有效即可。数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9
2021-09-22:请你判断一个 9x9 的数独是否有效.只需要 根据以下规则 ,验证已经填入的数字是否有效即可.数字 1-9 在每一行只能出现一次.数字 1-9 在每一列只能出现一次.数字 1-9 ...
- Django4全栈进阶之路8 createsuperuser创建超级管理员账号
在 Django 4 中,可以使用 createsuperuser 命令来创建超级管理员账号.超级管理员拥有管理后台的所有权限,包括创建.编辑和删除用户.组.权限等操作. 下面是创建超级管理员账号的步 ...
- Event Tables for Efficient Experience Replay
Abstract 事件表分层抽样(SSET),它将ER缓冲区划分为事件表,每个事件表捕获最优行为的重要子序列. 我们证明了一种优于传统单片缓冲方法的理论优势,并将SSET与现有的优先采样策略相结合,以 ...
- ES 数据没了?谁动了我的数据?
背景 我们在使用 Elasticsearch 的时候,可能会遇到数据"丢"了的情况.有可能是数据没成功写入 ES 集群,也可能是数据被误删了. 针对数据被误删,有没有好的解决办法呢 ...
- Java中的三元运算,以后用得到!
前言 Java 中的三元运算,平时也叫做三目运算,大家了解吗?下面就详细介绍一下,以后在项目编程中用得到. 一.Java运算符 在最底层,Java 中的数据是通过使用运算符来操作的.运算符是一种特殊的 ...
- 【2023 · CANN训练营第一季】昇腾AI入门Pytorch
昇腾AI全栈架构 华为AI全栈全场景解决方案为4层,分别为芯片层.芯片使能层.AI框架层和应用使能层. 芯片 基于统一.可扩展架构的系列化AI IP和芯片,为上层加速提供硬件基础. 芯片产品:昇腾31 ...
- 【python基础】函数-初识函数
函数是带名字的代码块,用于完成具体的工作,无需反复编写完成该工作的代码.之前我们接触过print函数,数据类型转换中的int函数.str函数,还有列表中的append函数.pop函数.remove函数 ...
- 大数据实战手册-开发篇之RDD:计算 transform->action
2.2 RDD:计算 transform->action 2.2.1 aggregate x = sc.parallelize([2,3,4], 2)[Task不能跨分片,task数为2] ne ...