python manage.py迁移不起作用,runserver也是如此

时间:2015-11-30 17:32:18

标签: python mysql django python-2.7

我设法成功安装mysql。但是当我尝试运行以下命令时 -python manage.py makemigrations -python manage.py syncdb 它给了我这个错误。

  

导入错误:没有名为python.settings的模块

我的wsgi.py文件包含

  

导入os

     

来自django.core.wsgi导入get_wsgi_application

     

os.environ.setdefault(“DJANGO_SETTINGS_MODULE”,“Portfolio.settings”)

     

application = get_wsgi_application()

P.S:我正在研究ubuntu 14.04,另外在python manage.py runserver命令中也有同样的错误。

1 个答案:

答案 0 :(得分:1)

我正在运行类似的服务器设置(Ubuntu 14.04,Apache,mod_wsgi),在我们的wsgi.py文件中,我们必须做两件事来确保它有效。我们使用了顶级应用程序目录的导入,并且还有一个多文件(不是django默认)设置结构,并且必须调整我们的设置文件的规范。

例如,我们的文件夹结构是:

project-directory
- manage.py
- static
- app1-directory
   - settings # a directory, not a file
       - development.py
       - quality_assurance.py
       - production.py
   - wsgi.py
- app2-directory

在wsgi.py文件中我们需要在setdefault行之前包含该指令:

import sys
sys.path.append(os.path.dirname(os.path.dirname(__file__)))

我们做的第二个更改是指定确切的设置文件,而不是" app1-directory.settings"我们以此为例:

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "app-name.settings.quality_assurance")