Python+Django连接mysql 自动创建model

来源:互联网 发布:生日网站源码 编辑:程序博客网 时间:2024/06/05 08:27

python+django对数据库的支持是非常多的。可以使用默认的sqlite数据库。python3.4.2已经集成了sqlite3数据库。

我们这里演示一下怎么连接mysql数据库。

要连接mysql数据库必须要安装一个我称之为中间件。如果是3.2之前的版本。可以使用MySQLdb来连接。因为我这里安装的是3.4.2版本,这个版本连接mysql有一定的区别。需要使用pymysql来连接。下载地址在这里:

PyMySQL

这是一个开源的工程。

下载完了之后我们可以在控制台使用python setup.py install将库文件安装到python中。

MySQLdb的安装是可以直接运行的。

Django约定必须要创建app才能使用模型。
Django认为一个project包含很多个Django app,project提供配置文件,比如数据库连接信息、 安装的app清单、模板路径等等;而一个app是一套Django功能的集合,通常包括模型和视图,按Python的包结构的方式存在。
app可以在多个project之间很容易的复用。比如Django自带的注释系统和自动管理界面。

创建应用的脚本也是使用project目录下的managy.py:

$python manage.py startapp app1

这样就会在工程目录下创建一个app1命名的文件夹:

文件目录如下:

这里本来是有一个migrations文件夹。这里会影响ORM的生成。所以我们删去这个文件夹。

我们编辑models.py:

from django.db import modelsclass Product(models.Model):     title          = models.CharField(max_length=100)     description     = models.TextField()     image_url     = models.CharField(max_length=200)     price          = models.DecimalField(max_digits=8,decimal_places=2)
创建一个模型叫Product以及对应的属性。

接下来配置数据库的连接:

在settings.py文件做如下修改:


配置好与数据库之间的连接。

接下来我们验证一下:

$python manage.py validate/check

之前的版本使用validate后来被废弃掉使用check来做校验。没有错误之后我们就可以连接数据库。

$ python manage.py syncdb

这里有可能会有问题。可能会报找不到Module 'MySQLdb'

因为我们这里使用的是PyMySQL,而django1.8(我当前的版本)默认是使用MySQLdb

我们找到使用的地方:

在Python安装目录Lib\site-packages\Django-1.8-py3.4.egg\django\db\backends\mysql对应的文件夹下有一个base.py这里是连接数据库具体的代码。我们可以讲这个模块里边的MySQLdb全部替换为pymysql。

然后再执行:$ python manage.py syncdb

就会发现我们的模型已经导入到数据库里边了。

这样我们就可以使用django和python连接mysql数据库进行操作。

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 狗狗间歇性抽搐怎么办 鼻子干燥有点痛怎么办 泰迪狗鼻子烂了怎么办 小狗鼻子干脱皮怎么办 鼻子短怎么办除了手术 狗得了狗瘟怎么办 泰迪感染细小怎么办 痔疮术后肛门痒怎么办 肛门脓肿流血了怎么办 检查肛门拉屎了怎么办 怀孕期间肛门湿疹怎么办 头晕检查说没事怎么办 慢性咽喉炎引起的咳嗽怎么办 咽炎引起的咳嗽怎么办? 补牙换药后疼痛怎么办 深度伤口换药疼痛怎么办 孕妇肛门有蛲虫怎么办 孕妇上火拉血怎么办 孕期内检出血怎么办 顺产肛门脱肛了怎么办 怀孕痔疮老脱出怎么办 顺产后浑身酸疼怎么办 爬山后肌肉酸疼怎么办 手上打针胳膊疼怎么办 狗 打针后疼痛怎么办 流产后浑身酸疼怎么办 屋子里潮湿有味怎么办 墙潮湿发霉有味怎么办 当兵体检没有过怎么办 航空面试有纹身怎么办 儿童眼睛外斜视怎么办 大疆imu异常怎么办 新生儿血液回流不好怎么办 灌肠温度高了怎么办 炎症引起的咳嗽怎么办 90岁老人肠梗阻怎么办 84岁老人肠梗阻怎么办 婴儿开塞露后大便肚子疼怎么办 孕早期用开塞露肚子疼怎么办 冰点脱毛后刺痛怎么办 医院建不上档怎么办