django admin 开发实例(Django给admin添加Action的步骤详解)
类别:脚本大全 浏览量:376
时间:2021-10-07 00:04:21 django admin 开发实例
Django给admin添加Action的步骤详解前言
django 的 admin 是个非常方便的admin portal,可以根据自己的需要重写.
在使用django自带的admin后台的时候,他提供了一些默认的指令可以对数据进行操作, 比如批量删除,修改等
同样的我们也可以添加自己的指令。
更多更详细请看官方文档:https://docs.djangoproject.com/en/dev/ref/contrib/admin/actions/
创建一个django项目
|
$ django - admin startproject djangoactions $ cd djangoactions $ python3 manage.py startapp mysite |
添加model
打开mysite下的models.py
|
from django.db import models class article(models.model): # 文章状态,类似枚举 status_choices = ( ( 'd' , '草稿' ), ( 'p' , '发布' ), ) # 标题 title = models.charfield(max_length = 30 ) # 内容 body = models.textfield() # 状态 status = models.charfield(max_length = 1 , choices = status_choices, default = 'd' ) def __str__( self ): return self .title |
将article注册到admin
打开mysite下的admin.py
|
from django.contrib import admin from .models import article # 指令处理函数,参数固定写法 def make_article_published(modeladmin, request, queryset): # queryset 是从数据库查询到的model set # 更新status状态为p,在此处就是article queryset.update(status = 'p' ) # 此指令的名称 make_article_published.short_description = '更改状态为发布' #将article注册到后台 @admin .register(article) class articleadmin(admin.modeladmin): # 后台列表展示的字段 list_display = ( 'title' , 'status' ) # 动作集合 actions = [make_article_published] |
启动服务
1.首先同步数据库
|
$ python3 manage.py makemigrations $ python3 manage.py migrate |
2.创建超级用户
|
$ python3 manage.py createsuperuser |
按照提示操作即可
3.启动服务
|
$ python3 manage.py runserver |
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对开心学习网的支持。
原文链接:http://litets.com/article/2019/4/29/386.html
您可能感兴趣
- vue项目引入element页面(vue-element-admin项目导入和导出的实现)
- laravel权限控制(laravel-admin 在列表页添加自定义按钮的例子)
- 宝塔面板phpMyAdmin错误教程(宝塔面板phpMyAdmin报错502 Bad Gateway nginx解决方法)
- laravel 权限管理(laravel框架 laravel-admin上传图片到oss的方法)
- OpenLDAP docker使用教程(Docker搭建OpenLDAP+phpLDAPadmin统一用户认证的方法)
- postgresql docker 宿主机(本地Docker安装Postgres 12 + pgadmin的方法 支持Apple M1)
- django 后台管理office文件(django admin后台添加导出excel功能示例代码)
- laravel 后台管理框架(关于Laravel-admin的基础用法总结和自定义model详解)
- django框架运行流程(Django+Xadmin构建项目的方法步骤)
- laravel增删改查接口(laravel-admin 实现给grid的列添加行数序号的方法)
- mysql的连接池名称如何查看(如何使用mysqladmin获取一个mysql实例当前的TPS和QPS)
- laravel数据绑定(laravel-admin表单提交隐藏一些数据,回调时获取数据的方法)
- 如何打开mysql8.0客户端服务(MySQL mysqladmin客户端的使用简介)
- laravel服务器设置(基于Laravel-admin 后台的自定义页面用法详解)
- laravel 后台管理框架(laravel-admin 管理平台获取当前登陆用户信息的例子)
- python 后台django(Python Django给admin添加Action的方法实例详解)
- 学好汉语拼音,从娃娃绕口令抓起,平时还是要多练 收藏好(从娃娃绕口令抓起)
- 仙女们的私藏鲜法大PK 鲜香切块牛肉(仙女们的私藏鲜法大PK)
- 天热没胃口 这道菜开胃又下饭,2个小技巧新手一学就会(这道菜开胃又下饭)
- 指天椒紫苏爆炒牛肉(指天椒紫苏爆炒牛肉)
- 谷雨前,吃牛羊肉别忘了吃河鲜,除湿还清热,加紫苏一炒特解馋(吃牛羊肉别忘了吃河鲜)
- 紫苏牛肉锅里滚一滚,香的鼻子都要掉了(紫苏牛肉锅里滚一滚)
热门推荐
- sqlserver常用的字符串函数(SqlServer 获取字符串中小写字母的sql语句)
- pyinstaller如何打包成exe文件(利用pyinstaller打包exe文件的基本教程)
- thinkphp标签详解(thinkphp整合系列之极验滑动验证码geetest功能)
- php如何创建二维数组(PHP二维索引数组的遍历实例分析2种方式)
- SQL SERVER ErrorLog文件
- js如何操作json字符串
- python处理时间序列常用方法汇总(python整小时 整天时间戳获取算法示例)
- jquery实现微信中长按识别二维码
- linux查看tcp状态(详解从Linux源码看SocketTCP的bind)
- nginx proxypass配置(nginx location中多个if里面proxy_pass的方法)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9