我刚在虚拟环境中安装了django 1.7。
然后我手动创建了以下文件:
service_bus/
service_bus/__init__.py
service_bus/django_settings.py
service_bus/models
service_bus/models/__init__.py
service_bus/models/dsp.py
service_bus/models/audience_type.py
service_bus/models/category.py
service_bus/models/audience.py
service_bus/models/dsp_config.py
service_bus/models/apsettings.py
所以我有一个设置文件service_bus/django_settings.py
和service_bus
应用。
然后我做了,在bash:
export DJANGO_SETTINGS_MODULE='service_bus.django_settings'
然后我只是尝试运行makemigrations,但它说没有检测到任何更改。
$ django-admin makemigrations
Loading properties from /etc/s1mbi0se/dmp.ini
System check identified some issues:
WARNINGS:
?: (1_6.W001) Some project unittests may not execute as expected.
HINT: Django 1.6 introduced a new default test runner. It looks like this project was generated using Django 1.5 or earlier. You should ensure your tests are all running & behaving as expected. See https://docs.djangoproject.com/en/dev/releases/1.6/#new-test-runner for more information.
No changes detected
$ django-admin makemigrations service_bus
Loading properties from /etc/s1mbi0se/dmp.ini
System check identified some issues:
WARNINGS:
?: (1_6.W001) Some project unittests may not execute as expected.
HINT: Django 1.6 introduced a new default test runner. It looks like this project was generated using Django 1.5 or earlier. You should ensure your tests are all running & behaving as expected. See https://docs.djangoproject.com/en/dev/releases/1.6/#new-test-runner for more information.
No changes detected in app 'service_bus'
在我的所有模特中,我都有类似
的东西class APSettings(models.Model):
...
class Meta:
db_table = u'APSettings'
app_label = 'service_bus'
我能错过什么?
答案 0 :(得分:1)
首先需要运行migrate
命令来构建数据库模式。然后,您可以为每个应用运行makemigrations
。有关详细信息,请查看Django tutorial。
答案 1 :(得分:1)
确保更新models.py文件以实际导入模型。例如,在models.py中,您有from service_bus.models.audience import *
。管理脚本遍历该文件,导入audience.py中的所有模型并检测其中的更改。如果您没有将新模型添加到models.py,则管理脚本不会了解模型文件中的新模型。