三分钟了解Django如何连接Mysql数据库
处理用户注册请求、Django连接MysqL数据库相关配置、数据库迁移命令:
my_Dproject/app01/views.py 在views函数文件中添加register函数,来处理用户注册的请求。
Tips:获取get请求数据的方式跟POST请求完全一样。
获取到用户注册信息,接下来需要连接数据库,拿到数据库的用户数据进行验证,注册的成功与否。
Django连接MySQL数据库的方法:
my_Dproject/my_Dproject/settings.py 继续回到settings配置文件中,来配置Django连接MySQL。
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'my_Dproject', 'HOST': '127.0.0.1', 'PORT': 3306, 'USER': 'root', 'PASSWORD': '123', } }
还没完,接着需要去项目的init文件中添加相关信息,告诉Django用MySQL数据库连接数据库就行。
my_Dproject/my_Dproject/__Init__.py中添加下面信息:
import pymysql pymysql.install_as_MySQLdb()
(这里需要注意:__init__.py文件还在app01文件中有,也可以在app01中的init文件中添加,效果一样。)
配置添加Django中orm的models文件
重点:Django的orm不能自动帮我们创建数据库,但是可以自动帮我们创建表,同时一个Django项目就使用一个数据库。
my_Dproject/app01/models.py 中添加映射表的相关类。
这里我们需要用到用户数据表,所以创建一张User类来映射MySQL数据库中的user用户表。
相关推荐:《Python相关教程》
class User(models.Model): id = models.AutoField(primary_key=True) name = models.CharField(max_length=32) password = models.CharField(max_length=16)
映射表的类创建完毕后,需要进行关键的2步【数据库迁移命令】操作,才能创建出user表:
第一步:将数据库变动记录记录到一个文件中:
在pycharm自带的Terminal命令行中输入:
python3 manage.py makemigrations
第二步:将数据库变动同步到数据库中:
python3 manage.py migrate
重点:
以后只要涉及到数据库的一丝变动(这里主要说的是表结构),要想让变动生效一定要执行这2步数据库迁移(同步)命令!!!
这里提一个小点:我们在测试时候如果遇到下面这种情况:
解决办法是:在settings.py文件中注释掉一行代码:
来源:PY学习网:原文地址:https://www.py.cn/article.html