【NB】激活模型
http://cdn.u1.huluxia.com/g4/M02/E1/50/rBAAdmNqcguAAn95AADQ4EfoNCk441.jpg
模型代码很小,但表示了 Django 的很多信息。.有了它 Django 可以:
为这个应用程序创建数据库(CREATE TABLE语句)
创建访问 Question 和 Choice对象的Python数据库访问API
但首先我们需要告诉 polls 项安装了的应用程序。
再次编辑 mysite/settings.py 文件,并更改INSTALLED_APPS设置包含字符串“polls.apps.PollsConfig”。结果如下所示:
mysite/settings.py文件内容如下:
INSTALLED_APPS = [
'polls.apps.PollsConfig',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]http://cdn.u1.huluxia.com/g4/M02/E1/50/rBAAdmNqcgyAAQtxAAFvpfFVgBo794.jpg
现在Django知道 polls 程序。让我们运行另一个命令:
C:\Python27\mysite>python manage.py makemigrations polls
Migrations for 'polls':
0001_initial.py:
- Create model Choice
- Create model Question
- Add field question to choice
C:\Python27\mysite>http://cdn.u1.huluxia.com/g4/M02/E1/50/rBAAdmNqcg2ABMoNAAFq2-1oGUk747.jpg
通过运行makemigrations,告诉Django你已经做了模型一些改动(在这种情况下,已经是最新的了),并且你想更改存储作为一个移植。
迁移是Django怎么存储您更改的模型(由你的数据库架构决定)- 它们只是在磁盘上的文件。您如果喜欢可以读取移植新的模型,它在文件 polls/migrations/0001_initial.py。你不会希望Django每一次都读取它们,不过将它们设计可编辑的,你要知道Django是如何变化的并手动调整。
还有将运行migrations,自动管理数据库模式(表)命令 - 这就是所谓的迁移,让我们看看SQL了解移植运行。 sqlmigrate 命令将移植名称返回SQL显示:
$ python manage.py sqlmigrate polls 0001
http://cdn.u1.huluxia.com/g4/M02/E1/50/rBAAdmNqcg6AWCOaAABRrLCkxcY499.jpg
应该看到类似下面的东西(我们已经重新格式化它的可读性):
http://cdn.u1.huluxia.com/g4/M02/E1/50/rBAAdmNqcg6ALhWdAAM60utXWhQ990.jpg
.迁移命令将所有还没有被应用的迁移(Django跟踪哪些是使用数据库中的一个特殊的表名为django_migrations应用)运行它们在数据库中 - 基本上是,将使用模型在数据库模式的变化同步。
页:
[1]