settings.py设置连接mysql数据库
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'imooc', 'USER':'root', 'PASSWORD':'', 'HOST': 'localhost', 'POET': '3306', } }python3.5没有官方支持的mysqldb,使用pymysql替代,并在以下目录下的__init__.py中添加如下语句(不是建立的app中的__init__.py)
mysite/
manage.py
mysite/
__init__.py
settings.py
urls.py
wsgi.py
import pymysql
pymysql.install_as_MySQLdb()
连接数据库后在新建好的app中的modules.py中添加如下代码,创建数据表
from django.db import models # Create your models here. from django.db import models class Publisher(models.Model): name = models.CharField(max_length=30) address = models.CharField(max_length=50) city = models.CharField(max_length=60) state_province = models.CharField(max_length=30) country = models.CharField(max_length=50) website = models.URLField() class Author(models.Model): first_name = models.CharField(max_length=30) last_name = models.CharField(max_length=40) email = models.EmailField() class Book(models.Model): title = models.CharField(max_length=100) authors = models.ManyToManyField(Author) publisher = models.ForeignKey(Publisher) publication_date = models.DateField()
编辑settings.py文件,在INSTALLED_APPS中添加新建app的名字,(我的是books)
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'books', ]
现在我们可以创建数据库表了。 首先,用下面的命令验证模型的有效性:
python manage.py check
check 命令检查你的模型的语法和逻辑是否正确。 如果一切正常,你会看到 0 errors found 消息。
运行
python manage.py makemigrations books
python manage.py sqlmigrate books 0001
python manage.py migrate
至此,数据库的连接和books表的创建就完成了,可以使用sqlyog连接验证
参考文档:
http://djangobook.py3k.cn/2.0/chapter05/
http://python.usyiyi.cn/django/intro/tutorial01.html#database-setup