Django后台admin的使用详解
作者:lemon 发布时间:2023-11-21 14:57:50
标签:Django,后台,admin
简述:
Django的admin可以提供一个强大的后台管理功能,可以在web界面对数据库进行操作,我们需要修改admin.py将要操作的数据表注册到后台管理中
创建数据表:
为了便于演示,我们在models.py中创建一张img数据表规则
图中 verbo_name 是在admin界面显示表字段的名称,定义的class Meta中的verbo_name是在admin界面显示的表名
修改admin.py文件
from django.contrib import admin
from app1 import models
# Register your models here.
admin.site.register(models.img) #将表在admin中注册
启动服务,进入界面
python manage.py makemigrations #生成创建数据表py文件
python manage.py migrate #执行py文件,更新数据库
python manage.py runserver #启动服务
打开浏览器,访问 http://127.0.0.1 :8000/admin
输入设置的账号密码,进入界面
默认的功能可以对表进行简单的增删改查,如果需要批量更新之类的操作,则需要定制相应动作
自定义内容显示:
我们选择进入我们创建的表的界面的时候,默认显示的内容是object
可以在models.py中的相应表写下定义__str__的字段
效果如下
默认显示的内容只有一个,我们可以通过定义ModelAdmin中的list_display来修改它:
from django.contrib import admin
from app1.models import img
# Register your models here.
class imgAdmin(admin.ModelAdmin):
list_display = ('title','summary','file')
admin.site.register(img,imgAdmin)
点击一条数据后,将默认显示每个字段不是一个AutoField并且editable=True在单个字段集中具有与模型中定义的字段相同的顺序。
我们可以定义ModelAdmin中的fields或exclude来修改它:
class imgAdmin(admin.ModelAdmin):
list_display = ('title','summary','file')
fields = ('title',)
exclude跟fields相反
自定义动作
默认动作只有删除一项
我们可以通过ModelAdmin自定义
def change_up(modeladmin, request, queryset): #定义动作
queryset.update(stat='1')
change_up.short_description = "up" #重写动作显示名称
def change_down(modeladmin, request, queryset):
queryset.update(stat='0')
change_down.short_description = "down"
class imgAdmin(admin.ModelAdmin):
list_display = ('title','summary','file','stat')
fields = ('title',)
actions = [change_up,change_down] #绑定动作
来源:https://segmentfault.com/a/1190000019688088
0
投稿
猜你喜欢
- Sublime Text 3纯文本编辑器Package Control(Sublime的包管理器)Sublime Text3中的插件,通过该
- ROC曲线绘制要点(仅记录)1、ROC用于度量模型性能2、用于二分类问题,如若遇到多分类也以二分类的思想进行操作。3、二分类问题代码实现(至
- 1. Python字典的clear()方法(删除字典内所有元素)#!/usr/bin/python# -*- coding: UTF-8 -
- 这篇文章主要介绍了Python读取表格类型文件代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋
- 很多人错误地认为ASP是简单、低效的代名词,认为ASP是低能的,不足挂齿的,也很简单,一学就会,一琢磨就精通。有人讲ASP不安全,写ASP的
- 需要准备环境:python3.6、vultr(或者其他服务器)、xshell第一步:python安装必备环境Django库Xshell链接远
- 本文实例讲述了Django中实现点击图片链接强制直接下载的方法。分享给大家供大家参考。具体分析如下:当用户点击图片连接时,默认为在浏览器中直
- 为了测试某个服务的稳定性,通常需要在服务长时间运行的情况下,监控其资源消耗情况,比如cpu和内存使用这里借助python的psutil这个包
- 最近一直在做Dnn模块的开发,过程中碰到这么一个问题,需要同时插入N条数据,不想在程序里控制,但是SQL Sever又不支持数组参数.所以只
- 定义和用法fopen() 函数打开文件或者 URL。如果打开失败,本函数返回 FALSE。语法fopen(filename,mode,inc
- 为了更好的说明问题,首先引出下面的题目//请说明下面变量 a-d 的值 var a = [[1][1]]; var b = [['a
- 最近真的喜欢上了用xheditor这个在线编辑器,但是美中不足的是我发现它暂时还不能取代FCKeditor,因为没有在线上传功能啊!当然,F
- 1969年8月8日,在北京协和医院降生了一个漂亮的小女孩。接生的阿姨说,她的声音这么大,好象想要全世界的人都听到。后来,她的父亲为她取了一个
- 在默认的情况下,MySQL搜索不区分大小写(但某些字符集始终区分大小写,如czech)。这意味着,如果你使用col_name LIKE
- 除了IE浏览器,其他所有主流的浏览器均支持原生的 Base64 编码:btoa(text) – base64 encodes text. a
- 由于最近有个任务需要在python环境下跑,项目是python3.6 + tensorflow1.3.1.现总结安装环境:卸载Python3
- 导语在设计论坛之前的讨论中曾经谈到过“设计师应该抓住这个时代的情感”,这是设计师的设计嗅觉和职业特性的体现,那么在纷纷扰扰中“裂变”的Web
- 最近帮朋友做了点东西,最后需要将结果在网页中展示,这就需要搭建个服务器,做几个网页把数据信息展示出来。网上找了一下,阿里腾讯都有租服务器的业
- 测试1deco运行,但myfunc并没有运行def deco(func): print 'bef
- 前言这篇文章主要介绍了pyinstaller打包opencv和numpy程序运行错误解决,文中通过示例代码介绍的非常详细,对大家的学习或者工