d:\python\demo2
前面的程序没有model层,接下来我们开始建立带有后台数据库功能的程序
遇到的坑:
最后一步执行python manage.py migrate时报如下异常
raise MigrationSchemaMissing("Unable to create the django_migrations table (%s)" % exc)
找了好半天,发现django连接mysql必须5.5以上。
目标
- 准备
- 1、创建工程
- 2.配置数据库连接
- 3.载入驱动
- 4.创建app
- 5.app注册
- 6.创建model
- 7.打开命令行窗口,运行命令,创建迁移,自动建表 ##
准备
安装MySQL,并已设置操作密码
1、创建工程##
在PyCharm 中创建新工程,选择Django 工程,输入路径d:\python\demo2,创建工程就好
pycharm安装Django,PyMySQL模块
2.配置数据库连接
在项目的 settings.py 文件中找到 DATABASES 配置项,修改配置
数据库得自行创建
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': '数据库名',
'USER':'你的数据库用户名',
'PASSWORD':'你的数据库密码',
'HOST':'127.0.0.1',
'PORT':'3306',
}
}
例如我的配置为:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'mysql',
'USER': 'root',
'PASSWORD': 'mysql',
'HOST': '127.0.0.1',
'PORT': '3306',
}
}
3.载入驱动
在项目下的init.py文件中加入
import pymysql
pymysql.install_as_MySQLdb()
4.创建app
单击左下角图标进入terminal视图键入以下命令
python manage.py startapp bookapp
5.app注册
打开settings文件,在INSTALLED_APPS配置中追加一条,
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'bookapp'
]
6.创建model
from django.db import models
# Create your models here.
class Book(models.Model):
bookname=models.CharField(max_length=200)
author=models.CharField(max_length=100)
publisher=models.CharField(max_length=200)
price=models.IntegerField()
7.打开命令行窗口,运行命令,创建迁移,自动建表
python manage.py makemigrations
python manage.py migrate