西游之路——python全栈——django中models配置

目录

 

Django支持多种数据库,sqlite,mysql,oracle等,其默认数据库是sqlite

在settings文件中可以发现:

复制代码
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}
复制代码

其默认数据库是sqlite3

要想使用其他数据库,需要修改相应的引擎和配置

(1)sqlite:

'ENGINE': 'django.db.backends.sqlite3',    #设置引擎
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), #设置数据库存放路径

(2)mysql

复制代码
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',   #数据库引擎设置
        'NAME': 'test',                         #数据库名称
        'USER': 'root',                         #数据库用户名
        'PASSWORD':'root',                      #数据库密码
        'HOST':'',                              #主机地址,默认localhost
        'PORT':'3306'                           #数据库端口
    }
}
复制代码

然后在APP目录下models文件中添加:

复制代码
from django.db import models

# Create your models here.

class UserInfo(models.Model):
    username = models.CharField(max_length=64)
    age = models.IntegerField()
复制代码

使用命令生成数据表(python---django使用数据库(orm)):

python manage.py makemigrations
python manage.py migrate

会发现报错:

django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named MySQLdb

原因是因为:

Django默认你导入的是MySQLdb,但是MySQLdb 对于py3版本有很大问题,所以我们需要的驱动为pymysql,所以在项目名文件夹的__init__.py中引入pymysql(也可以直接在settings下的全局文件__init__.py中引入)

import pymysql
pymysql.install_as_MySQLdb()

再进行启动,可以成功创建。

 

转载于:https://www.cnblogs.com/Lujun1028/p/9961080.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值