博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
django学习笔记【003】创建第一个带有model的app
阅读量:6502 次
发布时间:2019-06-24

本文共 2980 字,大约阅读时间需要 9 分钟。

【1】python应用程序要连接mysql有多个驱动程序可供选择:

  1、MySQLdb 这个只支持python2.x 所以在这里就不说了;

  2、mysqlclient 下载地址  

https://pypi.python.org/pypi/mysqlclient/1.3.9

  3、MySQL Connector/python 这个是mysql官方主推的mysql驱动

https://dev.mysql.com/downloads/connector/python/

  从django的官方文档中没有找到为什么python3.x选择了mysqlclient而不是MySQL Connector/Python ;在编写用到数据库功能的Django之前

  要把mysqlclient安装一下。

  

【2】把polls这个app注册到project中去、修改settings.py 文件的INSTALLED_APPS配置项

INSTALLED_APPS = [    'polls.apps.PollsConfig', # 增加polls.apps.PollsConfig 用于注册polls到project    'django.contrib.admin',    'django.contrib.auth',    'django.contrib.contenttypes',    'django.contrib.sessions',    'django.contrib.messages',    'django.contrib.staticfiles',]

 

【3】配置django连接mysql数据库的方式、修改settings.py 文件的DATABAES配置项

DATABASES = {    'default': {        'ENGINE': 'django.db.backends.mysql',        'NAME': 'tempdb',        'USER': 'appuser',        'PASSWORD': 'helloapp',        'HOST': '127.0.0.1',        'PORT': '3306'    }}

 

【4】创建模式、在polls/models.py 文件下增加如下orm类

from django.apps import AppConfigclass PollsConfig(AppConfig):    name = 'polls'

 

【5】创建用于迁移的中间文件

tree polls/polls/├── admin.py├── apps.py├── __init__.py├── migrations│   └── __init__.py├── models.py├── tests.py└── views.pypython3.5 manage.py makemigrations pollsMigrations for 'polls':  polls/migrations/0001_initial.py:    - Create model Persontree polls/polls/├── admin.py├── apps.py├── __init__.py├── migrations│   ├── 0001_initial.py│   ├── __init__.py│   └── __pycache__│       └── __init__.cpython-35.pyc├── models.py├── __pycache__│   ├── admin.cpython-35.pyc│   ├── apps.cpython-35.pyc│   ├── __init__.cpython-35.pyc│   └── models.cpython-35.pyc├── tests.py└── views.py

 

【6】把迁移应用到数据库

python3.5 manage.py migrate polls 0001Operations to perform:  Target specific migration: 0001_initial, from pollsRunning migrations:  Applying polls.0001_initial... OK

 

【7】查看数据库中有哪些变更

show tables;+-------------------+| Tables_in_tempdb  |+-------------------+| django_migrations || polls_person      |+-------------------+show create table polls_person;+--------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+| Table        | Create Table                                                                                                                                                    |+--------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+| polls_person | CREATE TABLE `polls_person` (  `id` int(11) NOT NULL AUTO_INCREMENT,  `name` varchar(8) NOT NULL,  PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=latin1 |+--------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------+

 

 

 

 

 

 

 

----

转载于:https://www.cnblogs.com/JiangLe/p/6374792.html

你可能感兴趣的文章
系统时钟初始化实例
查看>>
Linux磁盘分区,挂载
查看>>
grep命令的使用
查看>>
Titanium -- 运行app出现错误: TypeError: argument of type 'NoneType' is not iterable
查看>>
软件功能描述
查看>>
ES6转换为ES5
查看>>
京东校招java笔试题_试卷: 京东2019校招笔试Java开发工程师笔试题(1-)
查看>>
java怎么删除创建的类_一个java创建,删除,构建Jenkins等功能的JenkinsUtil工具类...
查看>>
编程java梦想数_JAVA基础总结
查看>>
java初始化重排_JAVA并发环境下指令重排带来的问题
查看>>
java connection 共享_【java項目實戰】ThreadLocal封裝Connection,實現同一線程共享資源...
查看>>
java中锁的等级_深入浅出!对象级别锁 vs 类级别锁 – Java
查看>>
php 5.4 memcache,linux下php5.4添加memcache扩展
查看>>
php session作用,session的作用是什么
查看>>
php 两行数据合并,PHP如何实现统计数据合并
查看>>
java国外研究综述,国内外研究现状_毕业论文
查看>>
php执行事务,thinkPHP框架中执行事务的方法示例
查看>>
php 两个值比较大小写,php比较两个字符串(大小写敏感)的函数strcmp()
查看>>
java3d获取模型在xoy平面的投影,将3D世界点投影到新视图图像平面
查看>>
php 修改图片src,jq修改src图片地址 .attr is not a function
查看>>