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

下面是详细讲解“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日

相关文章

  • 简单了解Django模板的使用

    以下是详细讲解“简单了解Django模板的使用”的完整攻略。 一、什么是Django模板 Django模板是Django框架中的一个重要组件,它用于将数据生成html文档。模板将数据与html文档分开处理,使得前端和后端可以分别进行编写和维护。 二、Django模板使用方法 1.创建模板文件 在Django项目中,通常将所有模板放在一个模板文件夹下。创建模板…

    Django 2023年5月16日
    00
  • django favicon配置

    其实网站加一个图标,在/static/images/里面放置favicon.ico 1. 直接url里修改 from django.views.generic.base import RedirectView favicon_view = RedirectView.as_view(url=’/static/favicon.ico’, permanent=Tr…

    Django 2023年4月16日
    00
  • Django Admin后台添加数据库视图过程解析

    下面我将为你详细讲解“Django Admin后台添加数据库视图过程解析”以及两条示例说明。 什么是Django Admin? Django Admin 是 Django 的一个开箱即用的功能,它提供了一个快速而简单的方式来创建管理后台。通过 Django Admin,我们可以灵活地配置、管理和增加我们的数据。 如何添加数据库视图? 添加数据库视图有两个步骤…

    Django 2023年5月16日
    00
  • nginx + uWSGI 提高 Django的并发性

    1. uWSGI : uWSGI是一个web服务器,实现了WSGI协议、uwsgi协议、http协议等。 uWSGI的主要特点是: 超快的性能 低内存占用 多app管理 详尽的日志功能(可以用来分析app的性能和瓶颈) 高度可定制(内存大小限制,服务一定次数后重启等) uWSGI服务器自己实现了基于uwsgi协议的server部分,我们只需要在uwsgi的配…

    Django 2023年4月10日
    00
  • django之对django内置的User模型进行自定义扩展方式

    对django内置的User模型进行自定义扩展可以使用Django提供的User模型扩展机制。下面详细讲解对django内置的User模型进行自定义扩展方式的完整攻略。 一、创建扩展模型 第一步是创建扩展模型,继承自Django内置的User模型,并添加想要扩展的字段。这里我们以添加nickname为例。创建一个新的app,这里我们取名为account: #…

    Django 2023年5月16日
    00
  • django如何自定义manage.py管理命令

    在Django开发过程中,我们常常需要执行一些自定义的管理命令,例如批量导入数据、生成测试数据等。Django提供了一个命令行工具manage.py,我们可以通过自定义命令来扩展其功能。下面是自定义manage.py命令的完整攻略: 1. 创建自定义命令 首先,我们需要创建一个新的命令文件。在项目根目录下创建一个management/commands文件夹,…

    Django 2023年5月16日
    00
  • Django – 权限(4)- queryset、二级菜单的默认显示、动态显示按钮权限

    一、queryset   Queryset是django中构建的一种数据结构,ORM查询集往往是queryset数据类型,我们来进一步了解一下queryset的特点。 1、可切片   使用Python 的切片语法来限制查询集记录的数目。它等同于SQL 的LIMIT 和OFFSET 子句。   >>> Entry.objects.all()[…

    Django 2023年4月10日
    00
  • django之定义统一返回数据格式与GET/POST装饰器

    1. 为了返回给网页前端的格式统一,定义一个通用的插件类,返回统一格式数据 # enconding:utf-8 “”” 定义一个插件类, “”” from django.http import JsonResponse,HttpResponse # 自定义状态码 class HttpCode(object): # 正常登陆 ok = 200 # 参数错误 p…

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