django从mysql读取数据
时间: 2023-06-28 15:12:19 浏览: 93
在Django中从MySQL读取数据,你需要先安装MySQL数据库驱动程序。例如,你可以使用`mysqlclient`或`pymysql`来连接MySQL数据库。
1. 安装MySQL数据库驱动程序
如果你使用的是`mysqlclient`,可以使用以下命令安装:
```
pip install mysqlclient
```
如果你使用的是`pymysql`,可以使用以下命令安装:
```
pip install pymysql
```
2. 在Django项目的`settings.py`中配置MySQL数据库
打开Django项目的`settings.py`文件,找到`DATABASES`设置项,将其修改为以下内容:
```python
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'your_database_name', # 数据库名
'USER': 'your_database_user', # 数据库用户名
'PASSWORD': 'your_database_password', # 数据库密码
'HOST': 'your_database_host', # 数据库主机地址
'PORT': 'your_database_port', # 数据库端口号
}
}
```
其中,`your_database_name`是你的数据库名称,`your_database_user`是你的数据库用户名,`your_database_password`是你的数据库密码,`your_database_host`是你的数据库主机地址,`your_database_port`是你的数据库端口号。
3. 在Django应用中读取MySQL数据库数据
在Django应用中读取MySQL数据库数据,你需要先定义一个数据模型类,然后使用ORM操作数据库。
例如,假设你的MySQL数据库中有一个名为`myapp_person`的表,其中包含`id`、`name`和`age`三个字段,你可以使用以下代码在Django应用中读取该表的数据:
```python
from django.db import models
class Person(models.Model):
id = models.AutoField(primary_key=True)
name = models.CharField(max_length=50)
age = models.IntegerField()
# 读取所有数据
persons = Person.objects.all()
# 读取指定条件的数据
persons = Person.objects.filter(age__gte=18)
```
其中,`Person`是数据模型类,`id`、`name`和`age`是表中的字段,`objects`是ORM提供的查询方法,`all()`方法读取所有数据,`filter()`方法可以根据指定的条件读取数据。
阅读全文