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 ...
随机推荐
- 深度学习04-(Tensorflow简介、图与会话、张量基本操作、Tensorboard可视化、综合案例:线性回归)
深度学习04-Tensorflow 深度学习04-(Tensorflow) Tensorflow概述 Tensorflow简介 什么是Tensorflow Tensorflow的特点 Tensorfl ...
- [OpenCV-Python] 18 图像梯度
文章目录 OpenCV-Python:IV OpenCV中的图像处理 18 图像梯度 18.1 Sobel 算子和 Scharr 算子 18.2 Laplacian 算子 OpenCV-Python: ...
- 用Aspose-Java免费实现 PDF、Word、Excel、Word互相转换并将转换过得文件上传OSS,返回转换后的文件路径
嘿嘿嘿.嘿嘿,俺又回来了! github代码地址 https://github.com/Tom-shushu/work-study 接口文档有道云 https://note.youdao.com/s/ ...
- NC51101 Lost Cows
题目链接 题目 题目描述 \(N (2 \leq N \leq 8,000)\) cows have unique brands in the range 1..N. In a spectacular ...
- AI 在 API 设计中的应用:如何利用 Al 快速实现 API 开发和测试
一.引言 在当今互联网技术的快速发展中,API 成为了越来越多的软件和系统之间交互的核心方式,而 API 的质量和效率对于软件的开发和运维都至关重要.为了提高 API 的设计.开发.测试和运维的效率和 ...
- SpringBoot定义优雅全局统一Restful API 响应框架四
如果没有看前面几篇文章请先看前面几篇 SpringBoot定义优雅全局统一Restful API 响应框架 SpringBoot定义优雅全局统一Restful API 响应框架二 SpringBoot ...
- 音视频八股文(3)--ffmpeg常见命令(2)
07-ffplay命令播放媒体 播放本地文件 播放本地 MP4 视频文件 test.mp4 的命令,从第 2 秒位置开始播放,播放时长为 10 秒,并且在窗口标题中显示 "test time ...
- 2021-08-03:完美洗牌问题。给定一个长度为偶数的数组arr,假设长度为N*2,左部分:arr[L1……Ln],右部分: arr[R1……Rn],请把arr调整成arr[L1,R1,L2,R2,
2021-08-03:完美洗牌问题.给定一个长度为偶数的数组arr,假设长度为N*2,左部分:arr[L1--Ln],右部分: arr[R1--Rn],请把arr调整成arr[L1,R1,L2,R2, ...
- L1-025 正整数A+B (15 分)
1.题目描述: 题的目标很简单,就是求两个正整数A和B的和,其中A和B都在区间[1,1000].稍微有点麻烦的是,输入并不保证是两个正整数. 输入格式: 输入在一行给出A和B,其间以空格分开.问题是A ...
- Ubuntu 18.04 (Bionic) 简单快速的安装mongodb
按步骤走,不带脑子式安装(注意4.0版本mongodb官方已经不再支持,以下代码中可以修改mongodb版本号安装,目前最新版为6.0,如果懒得改直接用也可以,文章后边第三章第一条代码会直接升级为最新 ...