VS2017+python3.6+Django+mysql遇到的那些坑

对于新手的我,遇到各种问题都是一脸懵逼,然后就是一通乱查,然后就是一堆垃圾。

此教程是我遇到的一些坑,谨防以后在遇到特意记录下也给以后的刚入门选手提供方便,此教程适合新手。

1。新建项目(上来就是一个坑)

选择Django Web 项目,空的不选因为感觉要学习Django它自带的例程是个很好的参考

选虚拟环境,要不各种版本兼容问题给让你蛋疼

2.修改配置文件

 修改settings.py 文件需要修改两处

INSTALLED_APPS = ['app',
    # Add your apps here to enable them
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'PythonDjangoPro',] #这一行必须是你创建的web项目名称
DATABASES = {
    #'default': { #这个地方的注释要确定真的注释了
        #'ENGINE': 'django.db.backends.sqlite3',
        #'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
        
    #}
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'HOST': '127.0.0.1',
        'PORT': '3306',
        'NAME': 'root',#数据库名字
        'USER': 'root',
        'PASSWORD': 'root',
    }
}

3.安装pymysql

 

然后咱们需要配置项目加载识别链接数据库方式。在项目路径下找到 __init__.py

#coding:utf-8
import pymysql
pymysql.install_as_MySQLdb()

4.其他有可能的异常

打开你项目的地址env\Lib\site-packages\django\db\backends\mysql  找到base.py 用你饥渴难耐的vs2017编辑器注释掉这段该死的代码:

if version < (1, 3, 3):
    raise ImproperlyConfigured("mysqlclient 1.3.3 or newer is required; you have %s" % Database.__version__)

 

5.将模型注入到数据库

 

然后在打开的项目目录下面按住shit键,打开右键菜单

 

你需要依此输入以下代码:

python manage.py makemigrations

python manage.py migrate

此处有些童鞋的是通不过的,需要添加环境变量,NO(添加后还是不能用)

因为!你添加的是自己安装的Python环境,而现在用的是

项目地址 \env\Scripts  里面还有一个Python.exe没错就是虚拟环境中的用这个运行

此处还有幺蛾子,去掉你之前在官方包里有可能修改过的数据

python报错提示 AttributeError: ‘bytes’ object has no attribute ‘encode’、

python3中,编码的时候区分了字符串和二进制
encode 改为 decode 就可以了

 

打开Mysql数据库可视化界面看看数据库是不是有东西(表)

好了,发挥吧,童鞋。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值