Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 未拾取Django 1.7迁移_Python_Django_Django 1.7 - Fatal编程技术网

Python 未拾取Django 1.7迁移

Python 未拾取Django 1.7迁移,python,django,django-1.7,Python,Django,Django 1.7,使用Django 1.7和它的新迁移,我遇到了一个奇怪的问题 我把我的设置文件分为3个文件,这是我在1.7版之前一直做的 /settings __init__.py base.py development.py production.py \uuuu init\uuuuu.py from .base import * if sys.argv[1] == 'runserver': from .development import * else: from .pr

使用Django 1.7和它的新迁移,我遇到了一个奇怪的问题

我把我的设置文件分为3个文件,这是我在1.7版之前一直做的

/settings
  __init__.py
  base.py
  development.py
  production.py
\uuuu init\uuuuu.py

from .base import *

if sys.argv[1] == 'runserver':
    from .development import *
else:
    from .production import *
development.py
production.py
都有自己的数据库设置用于这些环境。但是,在新的migrations系统中,运行migrations不会检测到任何东西,除非我将数据库设置放入
base.py
文件中

我是否应将此行修改为以下内容:

 if sys.argv[1] == 'runserver' or sys.argv[1] == 'migrate':

<>强>还是有更好的方法?< /强>

您应该避免向设置文件添加逻辑,在使用RunServer测试时考虑使用CHE-SETION选项,如:

./manage.py --settings=project.settings.development runserver
#!/bin/bash
# This hook is run after this virtualenv is activated.
export DJANGO_SETTINGS_MODULE=project.settings.local
cd /home/user/develop/git/project
from .base import *

DATABASES = ... customize DB settings used for development/production ...
您还可以使用环境变量DJANGO_SETTINGS_MODULE切换DJANGO使用的设置模块

在您的开发环境中,您可以设置:

export DJANGO_SETTINGS_MODULE=project.settings.development
在生产中,您可以设置DJANGO\u SETTINGS\u MODULE=project.SETTINGS.production

详细信息取决于您使用的部署类型和服务器

就我个人而言,在我的开发设置中,我使用如下内容设置postactivate挂钩:

./manage.py --settings=project.settings.development runserver
#!/bin/bash
# This hook is run after this virtualenv is activated.
export DJANGO_SETTINGS_MODULE=project.settings.local
cd /home/user/develop/git/project
from .base import *

DATABASES = ... customize DB settings used for development/production ...
这样我就可以打字了

休恩项目

我已经正确设置了环境变量,并且我的shell被发送到了正确的文件夹中

您可以有一个base.py设置文件,其中包含所有常用设置,然后在development.py(和production.py)中执行以下操作:

./manage.py --settings=project.settings.development runserver
#!/bin/bash
# This hook is run after this virtualenv is activated.
export DJANGO_SETTINGS_MODULE=project.settings.local
cd /home/user/develop/git/project
from .base import *

DATABASES = ... customize DB settings used for development/production ...