python django 增删改查操作 数据库Mysql

yizhihongxing

下面是详细讲解“python django 增删改查操作 数据库Mysql”的完整攻略。

简介

Python Django 是一种开源的 Web 框架,它利用了 Python 的强大功能和 MySQL 数据库的灵活性,在 Web 开发领域得到了广泛应用。本文将讲解如何使用 Django 进行 MySQL 数据库的增删改查操作,包括两个示例说明。

环境准备

在开始之前,我们需要准备 Python3、Django、MySQL 等必要的环境:

  1. 在官网下载 Python 并安装;
  2. 安装 Django:在控制台输入 pip install django
  3. 安装 MySQL 数据库:官网下载安装程序并安装,安装时需注意选择对应的系统版本。

数据库连接

在使用 Django 进行数据库操作前,我们需要进行数据库连接。打开 settings.py 文件,在 DATABASES 中加入 MySQL 数据库的配置信息:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',  # 数据库类型
        'NAME': 'test_db',                     # 数据库名称
        'USER': 'root',                        # 用户名
        'PASSWORD': '123456',                  # 密码
        'HOST': '127.0.0.1',                   # 数据库地址
        'PORT': '3306',                        # 数据库端口号
        'OPTIONS': {
            'autocommit': True,                # 自动提交
        },
    },
}

增加数据

在 Django 中增加数据需要创建一个数据模型(Model),并通过该模型进行数据库的 CRUD 操作。打开 models.py 文件,在其中定义数据模型:

from django.db import models

class Book(models.Model):
    name = models.CharField(max_length=50)
    author = models.CharField(max_length=30)
    price = models.DecimalField(max_digits=5, decimal_places=2, default=0.00)

    def __str__(self):
        return self.name

在上述代码中,我们定义了一个 Book 模型,包含图书名称、作者和价格三个字段。接下来,我们可以通过代码向数据库中添加数据:

from django.shortcuts import render
from .models import Book

def add_book(request):
    book = Book(name='Python Django by Example', author='John Smith', price=12.99)
    book.save()
    return render(request, 'add_book.html')

在上述代码中,我们创建了一个 Book 对象,并通过 save() 方法将其保存到数据库中。

查询数据

查询数据需要使用查询集(QuerySet),可以通过模型.objects.all() 获取某个模型中的全部数据。下面是一个查询数据的示例:

from django.shortcuts import render
from .models import Book

def show_books(request):
    books = Book.objects.all()
    return render(request, 'show_books.html', {'books': books})

在上述代码中,我们通过 Book.objects.all() 获取了模型中的全部数据,并将其传递给模板文件 show_books.html。

修改数据

修改数据需要先查询到要修改的数据对象,然后对其进行修改并保存。下面是一个修改数据的示例:

from django.shortcuts import render
from .models import Book

def update_book(request):
    book = Book.objects.get(pk=1)     # 查询 id 为 1 的图书
    book.price = 21.99                # 修改价格
    book.save()                       # 保存修改
    return render(request, 'update_book.html')

在上述代码中,我们通过 Book.objects.get(pk=1) 查询到了 id 为 1 的图书,将其价格修改为 21.99 并保存。

删除数据

删除数据需要先查询到要删除的数据对象,然后调用其 delete() 方法即可。下面是一个删除数据的示例:

from django.shortcuts import render
from .models import Book

def delete_book(request):
    book = Book.objects.get(pk=1)     # 查询 id 为 1 的图书
    book.delete()                     # 删除该图书
    return render(request, 'delete_book.html')

在上述代码中,我们通过 Book.objects.get(pk=1) 查询到了 id 为 1 的图书,并将其删除。

以上就是 Python Django 增删改查操作数据库 MySQL 的完整攻略及两个示例说明。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python django 增删改查操作 数据库Mysql - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • 利用Python Django实现简单博客系统

    请看以下详细讲解“利用Python Django实现简单博客系统”的完整攻略。 1. 确定博客系统的基本功能 在设计博客系统之前,首先需要明确博客系统的基本功能,例如: 用户可以通过博客网站查看已发布文章; 网站后台管理员可以登录后台管理系统发布新的博客文章; 网站后台管理员可以对已发布的文章进行编辑和删除; 网站前台访客可以通过搜索框搜索博客文章。 2. …

    Django 2023年5月16日
    00
  • django ORM 一对多, 多对多 查询 以及 结合Tamplate

    ORM 表结构;和管理员是多对多, 和 OS 是一对多 class hosts(models.Model): out_ip=models.CharField(max_length=32) in_ip=models.CharField(max_length=32) app=models.ForeignKey(App) login_user=models.Cha…

    Django 2023年4月9日
    00
  • Python的Django框架中的数据库配置指南

    下面是针对“Python的Django框架中的数据库配置指南”的完整攻略。 确定数据库类型 在Django中,内置支持多种数据库,包括MySQL、PostgreSQL、SQLite等。在开始配置数据库之前,我们需要先确认使用哪一种数据库。 例如,我们这里假设要使用MySQL作为数据库类型。 安装数据库驱动 需要通过pip安装MySQL驱动,命令如下: pip…

    Django 2023年5月16日
    00
  • Django框架(十八)—— auth框架:用户登录、注册、认证

    一、什么是author模块 Auth模块是Django自带的用户认证模块,可以实现包括用户注册、用户登录、用户认证、注销、修改密码等功能。默认使用 auth_user 表来存储用户数据。 二、auth模块的使用 1、创建超级用户(create_superuser()) 创建超级用户就是在auth_user表中插入数据,密码是加密的,因此不能手动在数据库中插入…

    Django 2023年4月10日
    00
  • Django框架创建项目的方法入门教程

    下面是“Django框架创建项目的方法入门教程”的完整攻略。 创建Django项目的步骤 1. 安装Django框架 要创建一个Djano项目,首先我们需要安装Django框架。可以使用pip命令进行安装: pip install django 2. 创建Djano项目 在安装好Django之后,我们就可以创建Django项目了。在命令行中进入项目所在文件夹…

    Django 2023年5月16日
    00
  • Django 中使用流响应处理视频的方法

    下面是关于“Django 中使用流响应处理视频的方法”的完整攻略: 什么是流响应 流响应,即将一个大文件分别分割成一小段文件进行逐步传输,比直接下载整个文件更加高效,能够提高客户端获取数据的速度,大大降低客户端内存的消耗,成功解决了直接下载大文件内存不足的问题。 在 Django 中应用流响应处理视频 在 Django 中,通过使用流文件读取对象FileWr…

    Django 2023年5月16日
    00
  • Django 在admin中自定义app名

    前提条件,注册时是: 完整的注册,不是直接用app名进行注册 INSTALLED_APPS = [ ‘django.contrib.admin’, ‘django.contrib.auth’, ‘django.contrib.contenttypes’, ‘django.contrib.sessions’, ‘django.contrib.messages’…

    Django 2023年4月11日
    00
  • Django的学习——全局的static和templates的使用

    一、问题 首先我们在进行Django框架搭建的时候我们需要建立一个全局的变量,一是为了实现代码的复用,二是为了方便管理,如下图的样式   二、解决 1、修改setting里面的配置文件①templates的路径:按照以下的规则进行添加【app/templates】,然后在APP下面建立这个templates。 APP下的:   ②static的路径:在最后添…

    Django 2023年4月12日
    00
合作推广
合作推广
分享本页
返回顶部