django与MySQL

1. 介绍

Django是一个开放源代码的Web应用程序框架,使用Python编写,可用于快速开发Web应用程序。在本文中,我们将介绍如何在Django中使用MySQL数据库。

2. 安装

2.1 安装MySQL

要在Django中使用MySQL,您需要安装MySQL数据库。您可以从MySQL官方网站下载MySQL安装程序,然后按照安装向导的指示进行操作。

安装完成后,请确保MySQL服务正在运行。

2.2 安装MySQL客户端驱动程序

接下来,您需要安装MySQL客户端驱动程序。我们将使用Python的MySQLdb模块。

pip install MySQL-python

3. 配置Django

在安装和配置MySQL数据库之后,我们需要将Django配置为使用MySQL作为其默认数据库。

打开Django项目的settings.py文件,然后将DATABASES设置为以下内容:

DATABASES = {

'default': {

'ENGINE': 'django.db.backends.mysql',

'NAME': 'your_database_name',

'USER': 'your_database_user_name',

'PASSWORD': 'your_database_password',

'HOST': '127.0.0.1',

'PORT': '3306',

}

}

在这个例子中,我们使用MySQL作为默认数据库,并将数据库的名称、用户名、密码、主机和端口设置为我们的MySQL安装。

接下来,我们需要创建数据库。您可以使用以下命令在MySQL shell中创建数据库:

CREATE DATABASE your_database_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

注意:请替换“your_database_name”为您希望创建的数据库的名称。

4. 创建模型

现在,我们已经将Django配置为使用MySQL作为其默认数据库。下一步是创建模型。

在models.py文件中创建一个模型,例如:

from django.db import models

class Person(models.Model):

first_name = models.CharField(max_length=30)

last_name = models.CharField(max_length=30)

email = models.EmailField(max_length=254)

这个模型将创建一个名为“Person”的表,该表包含名字、姓氏和电子邮件地址字段。

5. 迁移

现在,我们已经创建了一个模型,我们需要向MySQL数据库迁移这个模型。

在终端中,导航到Django项目的根目录,并运行以下命令:

python manage.py makemigrations

python manage.py migrate

这将向MySQL数据库迁移我们的模型。

6. 执行查询

现在,我们可以使用Django ORM执行查询来访问我们的MySQL数据库。

打开Django shell,然后导入Person模型和Django ORM模块:

python manage.py shell

from your_app_name.models import Person

from django.db.models import Q

接下来,您可以使用Person模型执行各种查询,例如:

# Create a new Person record

person = Person(first_name='John', last_name='Doe', email='john.doe@example.com')

person.save()

# Query all Person records

people = Person.objects.all()

# Query a single Person record by id

person = Person.objects.get(id=1)

# Filter Person records by last_name

people = Person.objects.filter(last_name='Doe')

# Filter Person records by first_name and last_name

people = Person.objects.filter(Q(first_name='John') & Q(last_name='Doe'))

# Update a Person record

person.first_name = 'Jane'

person.save()

# Delete a Person record

person.delete()

7. 结论

通过本文,您已经了解了如何在Django中使用MySQL数据库。您已经学习了MySQL数据库的安装和配置、Django模型的创建、迁移和执行查询。

后端开发标签