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日

相关文章

  • python-num18 - django进阶一

    一。深入django的路由系统 下面为django的请求生命周期   下面来看下整个生命周期中的路由系统: 在Django的urls中我们可以根据一个URL对应一个函数名来定义路由规则如下: “””mysite_django URL Configuration The `urlpatterns` list routes URLs to views. For …

    2023年4月9日
    00
  • Django-Model数据库操作(增删改查、连表结构)详解

    Django-Model数据库操作详解 简介 Django中使用Model驱动的ORM技术进行数据库操作,使得操作数据库更加便捷、高效。本文将详细讲解Django-Model数据库操作中增删改查和连表结构的相关知识点。 安装 在开始使用Django-Model进行数据库操作前,需要先安装Django框架。如果您还没有安装Django,可以按照以下命令进行安装…

    Django 2023年5月16日
    00
  • Django密码管理

    密码管理通常不应被不必要地重新发明,Django提供一套安全灵活的工具来管理用户密码。如何存储密码,如何配置存储哈希以及一些使用哈希密码的实用程序。 也可看看 即使用户可能使用强密码,攻击者也可能能够窃听其连接。使用HTTPS避免通过纯HTTP连接发送密码(或任何其他敏感数据),因为它们很容易被密码嗅探。 Django如何存储密码 Django提供了一个灵活…

    Django 2023年4月12日
    00
  • django之cookie、session和ajax

       cookie是什么?          保存在客户端浏览器上的键值对   {k:v}          cookie依附在请求头或响应头中出现          发送请求时,会自动携带自己网站的cookie    应用:          实现登录          投票 1.1 获取Cookie request.COOKIES[‘key’] requ…

    Django 2023年4月13日
    00
  • 让Django支持Sql Server作后端数据库的方法

    将Django配置为使用Sql Server作为后端数据库的方法主要有以下几个步骤: 安装Microsoft ODBC Driver for Sql Server。该驱动程序是Sql Server与Django之间的桥梁,用于将Django的SQL语句转换为Sql Server可以理解的格式。你可以在Microsoft的官网下载安装包(http://www.…

    Django 2023年5月16日
    00
  • Django 权限管理

    对于Django而言,虽然自带了一些基本的通用权限限制,但现实中,可能我们更希望自己去定义业务权限划分     Django对于权限这块的部分验证方法 1 user = request.user 2 user.is_superuser #是否是超级管理员 3 user.s_anonymous() #是否匿名用户,及未登录用户 4 user.groups.se…

    Django 2023年4月11日
    00
  • django系列5.4–ORM中执行原生SQL语句, Python脚本中调用django环境

    在模型查询API不够用的情况下,我们还可以使用原始的SQL语句进行查询。 Django 提供两种方法使用原始SQL进行查询:一种是使用raw()方法,进行原始SQL查询并返回模型实例;另一种是完全避开模型层,直接执行自定义的SQL语句。 执行原生查询 raw()管理器方法用于原始的SQL查询,并返回模型的实例: 注意:raw()语法查询必须包含主键。 这个方…

    Django 2023年4月9日
    00
  • 简单了解Django模板的使用

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

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