2 回答
TA贡献1875条经验 获得超3个赞
1定义model
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()
2配置setting(数据库 安装的app略)
DATABASES = {
‘default’: {
# ‘ENGINE’: ‘django.db.backends.sqlite3’,
# ‘NAME’: os.path.join(BASE_DIR, ‘db.sqlite3’),
‘ENGINE’: ‘django.db.backends.mysql’,
‘HOST’:’127.0.0.1’,
‘PORT’:’3306’,
‘NAME’: ‘book’,
‘USER’: ‘root’,
‘PASSWORD’: ‘123’,
}
}
3 创建database book
mysql -u root -p
create database book
4 运行下面的命令来 CREATE TABLE
第一步 让Django知道要包含books应用。
python manage.py makemigrations books
通过运行makemigrations告诉Django,已经对模型做了一些更改(在这个例子中,你创建了一个新的模型)并且会将这些更改存储为迁移文件。Django使用迁移文件来保存对模型的更改(即数据库模式的更改)—— 所谓迁移文件其实就是磁盘上的普通文件。 如果愿意,你可以阅读迁移文件来了解新模型; 这个迁移文件就是 books/migrations/0001_initial.py。不用担心,Django不要求你在每次Django生成迁移文件之后都要阅读这些文件,但是它们被设计成可人为编辑的形式,以便你可以手工稍微修改一下Django的某些具体行为。
第二步 python manage.py sqlmigrate books 0001
第三步 python manage.py migrate
此时数据库创建完毕
- 2 回答
- 0 关注
- 1634 浏览
添加回答
举报