python Django连接MySQL数据库做增删改查

下面是一份完整攻略。

环境搭建

首先我们需要安装 Django 和 MySQL 驱动。安装 Django 可以使用 pip 包管理器,可以在终端中运行以下命令实现:

pip install Django

安装 MySQL 驱动则需要先安装 mysqlclient 或者 PyMySQL。推荐使用mysqlclient,这里以mysqlclient为例,可以在终端中运行以下命令安装:

pip install mysqlclient

除此之外,还需要在 MySQL 数据库中创建一个数据库,用于存储数据。可以在 MySQL 数据库终端中,使用以下命令来完成:

create database database_name;

Django 项目设置

  1. 创建 Django 项目

首先我们需要创建 Django 项目。可以在终端中运行以下命令来完成:

django-admin startproject project_name
  1. 配置 MySQL 数据库

在配置文件 settings.py 中,我们需要进行以下配置:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'database_name',
        'USER': 'username',
        'PASSWORD': 'password',
        'HOST': 'localhost',
        'PORT': '3306',
    }
}

在这里,我们需要将上面创建的数据库的名称填写到 NAME 字段中。另外,需要填写连接 MySQL 数据库的用户名和密码,以及 MySQL 数据库的主机地址和端口号。

  1. 创建 Django 应用

使用如下命令来创建 Django 应用:

python manage.py startapp app_name

在这里,我们需要将 app_name 修改为你所希望给应用取的名称。

编写 Django 程序

在 app 目录的 views.py 中,我们可以编写实现增删改查功能的代码。以下是两个示例:

查询功能

from django.http import JsonResponse
from app_name.models import ModelName

def query(request):
    results = []
    try:
        # 查询ModelName表中的所有数据
        data = ModelName.objects.all()
        # 遍历所有数据
        for item in data:
            # 将数据格式化后存入 results 列表
            results.append({
                'id': item.id,
                'name': item.name,
                'age': item.age,
            })
        # 返回查询结果
        return JsonResponse({'code': 'success', 'msg': '', 'data': results})
    except Exception as e:
        # 返回异常信息
        return JsonResponse({'code': 'error', 'msg': str(e)})

在这个函数中,我们使用了 Django 自带的 JsonResponse 类,将查询结果返回给客户端。其中,ModelName 表示需要查询的表名,id、name 和 age 分别表示表中对应的数据项名称。

添加功能

from django.http import JsonResponse
from app_name.models import ModelName

def add(request):
    try:
        # 获取客户端传递的数据
        name = request.POST.get('name')
        age = request.POST.get('age')

        # 将数据插入到 ModelName 表中
        item = ModelName(name=name, age=age)
        item.save()

        # 返回成功信息
        return JsonResponse({'code': 'success', 'msg': '添加成功'})
    except Exception as e:
        # 返回异常信息
        return JsonResponse({'code': 'error', 'msg': str(e)})

在这个函数中,我们使用了 Django 提供的 ORM 框架,通过创建 ModelName 对象,并调用 save 方法,将数据插入到数据库中。

总结

到这里,我们已经完成了一个简单的 Django 应用,实现了连接 MySQL 数据库,并实现了增删改查功能。当然,实际的开发过程中,还需要根据具体的需求进行功能的完善和优化。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python Django连接MySQL数据库做增删改查 - Python技术站

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

相关文章

  • 在ubuntu16上进行nginx+uwsgi+django部署的简要步骤

    网上有很多部署教程,说了一大堆,遇到坑还是要自己一个个解决,这里有几个比较重要的坑大家一定要注意。 1、首先要安装python和python-dev环境,如果没有安装python-dev后面安装有些依赖要报错。这是第一个坑。 apt-get install python python-dev pip 2、安装uwsgi要先安装gcc的编译环境。这是第二个坑。…

    Django 2023年4月13日
    00
  • [django]django 3种返回json方法

    django 3种返回json方法 1.手动组装字典返回 from django.http import JsonResponse, HttpResponse from django.shortcuts import render from app01.models import Book # Create your views here. def get_…

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

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

    Django 2023年4月9日
    00
  • Python的Django框架可适配的各种数据库介绍

    本文将详细讲解Python的Django框架可适配的各种数据库介绍,包括可适配的数据库类型、如何配置、常用API等。同时,本文还包含两条示例说明,以帮助开发者更好地了解Django框架与数据库交互的过程。 可适配的数据库类型 Django框架支持多种不同的数据库类型,包括: PostgreSQL MySQL SQLite Oracle Microsoft S…

    Django 2023年5月16日
    00
  • django的聚合函数和aggregate、annotate方法使用详解

    标题:Django的聚合函数和aggregate、annotate方法使用详解 在Django的ORM中,聚合函数和aggregate、annotate方法是用来对查询的结果进行统计和分析的常用方法。下面详细介绍聚合函数和这两个方法的使用方法,并提供两个示例说明。 一、聚合函数 聚合函数是用来对查询结果进行统计分析的函数。常用的聚合函数有:Count(), …

    Django 2023年5月16日
    00
  • Ubuntu1404+Django1.9+Apache2.4部署配置1安装

      关于Ubuntu环境下的文章很少,搜索一些问题比较麻烦,这里将别人的做法和自己做的整合一下。这篇文章主要讲解基础的安装,至于Django1.9如何部署到Apache2.4请转到下一篇博文http://www.cnblogs.com/wdfwolf3/p/5436839.html。   我最终的系统环境是: Ubuntu1404+python2.7+dja…

    Django 2023年4月13日
    00
  • django数据模型(Model)的字段类型解析

    关于Django数据模型(Model)的字段类型解析,首先需要对Django的Model有一定的了解。 Django的Model是Python编程语言中的类,它允许我们定义一个数据库中的表结构,每个属性表示表中的一列。这些属性包括Django中的字段类型和字段选项,用于存储数据。Django提供了多种类型的字段,以满足不同的需求。下面详细介绍每一种字段类型。…

    Django 2023年5月16日
    00
  • Django 连接mysql数据库中文乱码

    2018年08月25日 20:55:15 可乐乐乐乐乐 阅读数:566   版本:CentOS6.8 python3.6.4 django1.8.2 数据库pymysql 我使用的终端是CentOS终端,CentOS桌面版安装的pycham,windows使用Navicat连接mysql数据库。 我遇到的情况大致这样,在CentOS终端进入mysql,然后查…

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