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 ...
随机推荐
- Python-趣味小程序
1.效果 2.代码 import sys import time def print_act(word): #print('\n'+' '+'\r') #让光标回到行首 sys.stdout.writ ...
- 一文梳理z-index和层叠上下文
前言 最近参与某前端项目架构改造,发现项目中滥用z-index,设置的值有几十种并且不统一.在对项目的z-index进行梳理和统一过程中也深入学习了一下z-index,并撰写成文,希望也能帮助到陌生的 ...
- 2023-04-06:拥抱Golang,优化FFmpeg音频编码器,探究encode_audio.c的内部结构。
2023-04-06:拥抱Golang,优化FFmpeg音频编码器,探究encode_audio.c的内部结构. 答案2023-04-06: 见moonfdd/ffmpeg-go库. 这段代码是一个示 ...
- 2021-06-03:布尔运算。给定一个布尔表达式和一个期望的布尔结果 result,布尔表达式由 0 (false)、1 (true)、& (AND)、 | (OR) 和 ^ (XOR) 符号组成。
2021-06-03:布尔运算.给定一个布尔表达式和一个期望的布尔结果 result,布尔表达式由 0 (false).1 (true).& (AND). | (OR) 和 ^ (XOR) 符 ...
- vue-admin-template包下载地址
https://gitee.com/panjiachen/vue-admin-template/ https://github.com/PanJiaChen/vue-admin-template
- import MySQLdb as Database ModuleNotFoundError: No module named ‘MySQLdb‘
import MySQLdb as Database ModuleNotFoundError: No module named 'MySQLdb' import MySQLdb as Database ...
- [vuex] unknown action type:***
vuex 分模块后使用mapActions调用action老是提示 [vuex] unknown action type:*** 异常 目录 index.js是这样的 import Vue from ...
- Pandas 加载数据的方法和技巧
哈喽大家好,我是咸鱼 相信小伙伴们在学习 python 数据分析的过程中或多或少都会听说或者使用过 pandas pandas 是 python 的一个拓展库,常用于数据分析 今天咸鱼将介绍几个关于 ...
- Python批量填补遥感影像的无效值NoData
本文介绍基于Python中ArcPy模块,对大量栅格遥感影像文件批量进行无效值(NoData值)填充的方法. 在处理栅格图像文件时,我们经常会遇到图像中存在有无效值(即NoData值)的情况. ...
- Python获取系统当前时间并进行类型转换
# 1.使用Python获取系统当前时间print('---------下面是方法1-----------')import timeprint(time.strftime('%Y-%m-%d %H:% ...