为了使用Django读取MySQL里原有数据,我们需要先在Django项目里配置MySQL数据库连接。这可以通过修改settings.py文件里的DATABASES参数来完成,比如:
DATABASES = {'default': {'ENGINE': 'django.db.backends.mysql', # 数据库引擎'NAME': 'mydatabase', # 数据库名字'USER': 'mydatabaseuser', # 数据库登录名'PASSWORD': 'mypassword', # 数据库登录密码'HOST': 'localhost', # 数据库主机'PORT': '3306', # 数据库端口号}}
完成配置后,我们就可以在Django中使用数据模型来读取MySQL里的数据了。首先需要在models.py文件里定义数据模型,比如:
from django.db import modelsclass Book(models.Model):title = models.CharField(max_length=100)author = models.CharField(max_length=100)publisher = models.CharField(max_length=100)pub_date = models.DateField()def __str__(self):return self.title
上面代码描述了一个名为Book的数据模型,包括了书名、作者、出版社和出版日期四个属性。
在定义好数据模型之后,我们需要通过Django的ORM(对象关系映射)来读取数据库中的数据。一个简单的方法是使用数据模型的objects属性,比如:
books = Book.objects.all()for book in books:print(book.title, book.author)
上面代码读取了MySQL数据库中的所有书籍,然后逐个输出书名和作者。
需要注意的是,Django读取MySQL里原有数据的前提是该数据表已经创建好了。如果数据表还不存在,需要在MySQL中先创建该数据表,并设置好表结构和数据。