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

Django—admin后台管理

Django官网

https://www.djangoproject.com/

如果已经有了Django跳过这步

安装Django: 如果你还没有安装Django,可以通过Python的包管理器pip来安装:

pip install django

创建项目: 使用Django创建一个新的项目:

django-admin startproject mysite1

进入项目mysite1

cd mysite

创建应用: 在Django项目中,应用是执行特定功能的模块。你可以创建一个应用来组织你的代码:

python manage.py startapp bookstore

创建应用后需要注册:

定义模型: 在你的应用目录下,编辑models.py文件来定义你的数据模型。模型是数据库表的抽象表示:

from django.db import models# Create your models here.from django.db import modelsclass Book(models.Model):title = models.CharField("书名", max_length=50, default='',unique=True)pub = models.CharField("出版社",max_length=100,default='')price = models.DecimalField('定价', max_digits=7, decimal_places=2, default=0.0)info = models.CharField("描述",max_length=100,default='')market_price = models.DecimalField("零售价",max_digits=7,decimal_places=2,default=0.0)is_active = models.BooleanField('是否活跃',default=True)class Meta:db_table = 'book'verbose_name='图书'verbose_name_plural = verbose_namedef __str__(self):return '%s|%s|%s_%s'%(self.title,self.pub,self.info,self.price)class Author(models.Model):name = models.CharField('姓名',max_length=11)age = models.IntegerField('年龄',default=1)email = models.EmailField('邮箱',null=True)class Meta:db_table = 'author'verbose_name ='作者'verbose_name_plural = verbose_name

python manage.py makemigrations

python manage.py migrate

在mysql中创建数据表

可以使用shell操作数据到数据库,举例

python manage.py shell

from bookstore.models import Book

Book.objects.create(title=:'HTML5',pub='清华大学出版社',price=90,market_price=105)

创建超级用户: 创建一个超级用户账户,以便你可以登录到admin后台:

python manage.py createsuperuser

自定义admin: Django admin提供了许多自定义选项,比如自定义列表显示、搜索功能、过滤器等。你可以通过覆盖admin类来实现这些自定义。

from django.contrib import admin
from .models import Book,Author
# Register your models here.class BookManager(admin.ModelAdmin):#并列表页显示哪些字段的列list_display = ['id','title','pub','price']#控制list display中的字段哪些可以链接到修改页list_display_links = ['title']# 添加过滤器list_filter = ['pub']# 添加搜索框[模糊查询]search_fields = ['title']# 添加可在列表页编辑的字段list_editable = ['price']
admin.site.register(Book, BookManager)class AuthorManager(admin.ModelAdmin):# 并列表页显示哪些字段的列list_display = ['id', 'name', 'age']# 控制list display中的字段哪些可以链接到修改页list_display_links = ['name']# 添加过滤器list_filter = ['name']# 添加搜索框[模糊查询]search_fields = ['name']# 添加可在列表页编辑的字段list_editable = ['age']admin.site.register(Author,AuthorManager)

运行开发服务器: 启动Django的开发服务器,查看你的网站:

python manage.py runserver

默认端口为8000,也可以指定端口,python manage.py runserver 端口号

访问admin后台: (默认端口)在浏览器中访问http://127.0.0.1:8000/admin,使用你创建的超级用户账户登录。

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

相关文章:

  • 数字图像处理中的常用特殊矩阵及MATLAB应用
  • vue侦听器(Watch)精彩案例剖析一
  • HTTP 协议浅析
  • VsCode | 让空文件夹始终展开不折叠
  • Centos7_Minimal安装Cannot find a valid baseurl for repo: base/7/x86_6
  • Spark_Oracle_II_Spark高效处理Oracle时间数据:通过JDBC桥接大数据与数据库的分析之旅
  • 力扣 459重复的子字符串
  • MyBatis XML配置文件
  • 读写RDS或RData等不同格式的文件,包括CSV和TXT、Excel的常见文件格式,和SPSS、SAS、Stata、Minitab等统计软件的数据文件
  • Android 支持的媒体格式,(二)视频支持格式
  • 密码学原理精解【8】
  • 2024年钉钉杯大数据竞赛A题超详细解题思路+python代码手把手保姆级运行讲解视频+问题一代码分享
  • unity2D游戏开发01项目搭建
  • 删除的视频怎样才能恢复?详尽指南
  • LeetCode160 相交链表
  • 高性能响应式UI部件DevExtreme v24.1.4全新发布
  • Python实现Java mybatis-plus 产生的SQL自动化测试SQL速度和判断SQL是否走索引
  • UDP的报文结构及其注意事项
  • MySQL深度分页问题深度解析与解决方案
  • C#类型基础Part1-值类型与引用类型
  • 被上市公司预判的EPS增速分析
  • 快速入门了解Ajax
  • FPGA开发——呼吸灯的设计
  • 【数据结构】二叉树链式结构——感受递归的暴力美学
  • 开始尝试从0写一个项目--后端(三)
  • 2024年7月解决Docker拉取镜像失败的实用方案,亲测有效
  • 基于内容的音乐推荐网站/基于ssm的音乐推荐系统/基于协同过滤推荐的音乐网站/基于vue的音乐平台
  • STM32智能工业监控系统教程
  • WEB渗透Web突破篇-SQL注入(MYSQL)
  • PDF解锁网站