django+ mysql 数据库建立

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

猜你喜欢

转载自blog.csdn.net/fsh_walwal/article/details/52515794