当前位置: 首页 > news >正文

Django——Admin站点(Python)

#前言:

该博客为小编Django基础知识操作博客的最后一篇,主要讲解了关于Admin站点的一些基本操作,小编会继续尽力更新一些优质文章,同时欢迎大家点赞和收藏,也欢迎大家关注等待后续文章。

一、简介:

Django的Admin站点是一个内置的功能,它提供了一个基于Web的界面,用于管理和维护Django应用程序的后台数据。通过Admin站点,你可以轻松地执行诸如创建、读取、更新和删除(CRUD)数据对象等常见操作,而无需编写自定义管理界面。

简单来说,Admin站点就是相当于提供了一个管理员平台,可以用来管理各种数据。

二、操作:

1、创建管理员用户:

在local下输入python manage.py createsuperuser

注意:创建用户名不能于数据库中以有的用户名重复,否则会报错。

邮箱填不填写都无所谓,密码你输入的过程不会出现显示,密码一般要求是八位以上,不够八位会让你选择是否确认密码就为此密码。

还有,密码与用户名不要出现相同的字符段。

创建成功后就会进入这个页面:

而我们要将英文转换为中文就需要在setting文件下:

LANGUAGE_CODE = 'en-us'

改为:

LANGUAGE_CODE = 'zh-Hans'

2、注册模型类:

在新创建的应用中创建模型类。

注意:在创建模型类时候,verbose_name是对admin站点服务的,它不会迁移到数据库当中,也不需要迁移。

from django.db import modelsclass Goods(models.Model):name=models.CharField(max_length=50,verbose_name='商品名称')price=models.DecimalField(max_digits=11,decimal_places=3,verbose_name='价格')sales=models.IntegerField(verbose_name='销量')stock=models.IntegerField(verbose_name='库存')class Meta:db_table='goods'verbose_name='商品数据表'

到所在的应用下的 rango.py 文件中进行注册。

方式一:

from django.contrib import admin
from rango.models import Goods
admin.site.register(Goods)

方式二:

@admin.register(Goods)
class GoodesAdmin(admin.ModelAdmin):pass

此时admin站点为:

此时在admin站点当中就可以进行一个数据的简单增删改查。

3、修改admin站点中的应用名称:

到所在应用中的 __init__.py 添加:
default_app_config = 'rango.apps.RangoConfig'

在对应的应用中的 app.py 文件中设置站点使用的应用名称

在 app.py 的类中添加属性:

verbose_name='商品表'

4、admin模型类操作:

admin 模型类数据操作 , 在 admin.py 文件中操作:

@admin.register(Goods)
class GoodesAdmin(admin.ModelAdmin):# list_display 在站点中显示指定字段的数据信息list_display = ['id','name' , 'price' , 'sales']# list_filter 选择指定的字段作为条件过滤list_filter = ['name' , 'sales']# list_per_page 设置分页 , 指定每一页有多少条数据list_per_page = 2# search_fields 配置搜索条件 , 指定字段用元组类型search_fields = ('name','id')# list_editable 配置在显示列表中设置允许修改的字段list_editable = ('name' , 'price')# fields 在数据详情页中设置指的允许修改的字段# fields = ('name',)# fieldsets 设置在数据详情页中分组显示数据字段fieldsets = (# ('分组名称' , {'fields' : [指定字段名]})('商品基本信息' , {'fields':['name' , 'price']}),('商品销量信息' , {'fields':['sales' , 'stock']}),)# 设置只读字段readonly_fields = ('name',)

在 admin 站点中可以自定义字段,不影响数据库:

def num(g):# 参数 g:下面的类会自动的将模型类传入add = g.price * g.salesreturn add
# 将自定义的字段名修改为中文 , 不显示函数名
num.short_description = '商品销售额'@admin.register(Goods)
class GoodesAdmin(admin.ModelAdmin):# list_display 在站点中显示指定字段的数据信息list_display = ['id','name' , 'price' , 'sales' , num]

三、总结:

关于Django操作的一些基本知识点操作我在这儿就基本讲解完成了,后续小编会更新一些用Django来做项目和Redis数据库、Linux操作系统等内容,欢迎大家关注小编坐等更新,若是各位大神发现错误或者需要加的知识,欢迎大家前来指正,您的支持是我变强的最大动力!

http://www.lryc.cn/news/358999.html

相关文章:

  • React 组件通信
  • 【再探】设计模式—访问者模式、策略模式及状态模式
  • 新人硬件工程师,工作中遇到的问题list
  • 如何在Linux系统中搭建Zookeeper集群
  • C++:vector的模拟实现
  • QT系列教程(5) 模态对话框消息传递
  • Linux学习笔记(清晰且清爽)
  • 2.5Bump Mapping 凹凸映射
  • 数字化前沿:Web3如何引领未来技术演进
  • 【kubernetes】探索k8s集群的存储卷、pvc和pv
  • UI线程和工作线程
  • RandLA-Net 训练自定义数据集
  • 洛谷 B3642:二叉树的遍历 ← 结构体方法 链式前向星方法
  • 飞腾+FPGA多U多串全国产工控主机
  • uni-app实现页面通信EventChannel
  • 等保系列之——网络安全等级保护测评工作流程及工作内容
  • 自然语言处理中的BERT模型深度剖析
  • 数据结构:希尔排序
  • unicloud 云对象
  • 【车载开发系列】常用专业术语汇总
  • 如何实现Docker容器的自动化升级:不再为手动更新烦恼!
  • SwiftUI 5.0(iOS 17)进一步定制 TipKit 外观让撸码如虎添翼
  • 使用C#实现VS窗体应用——画图板
  • flutter 自定义本地化-GlobalMaterialLocalizations(重写本地化日期转换)
  • HTTPS 原理技术
  • Linux基础指令及其作用之压缩与解压
  • ORA-08189: 因为未启用行移动功能, 不能闪回表问题
  • html+CSS部分基础运用9
  • 五大元素之一,累不累——Java内部类
  • YAML快速编写示例