【问题标题】:django-admin runserver errordjango-admin 运行服务器错误
【发布时间】:2016-09-18 03:57:42
【问题描述】:

我为 python 2.7 设置了 virtualenv

16% source Work/Django/env/bin/activate

下一步创建项目

django-admin startproject myproject

创建应用程序

cd myproject
django-admin startapp contact

并尝试运行开发服务器

16% django-admin runserver

我收到一个错误

Traceback(最近一次调用最后一次): 文件“/home/dima/Work/Django/env/bin/django-admin”,第 11 行,在 sys.exit(execute_from_command_line()) 文件“/home/dima/Work/Django/env/local/lib/python2.7/site-packages/django/core/management/init.py”,第 353 行,在 execute_from_command_line 实用程序.execute() 文件“/home/dima/Work/Django/env/local/lib/python2.7/site-packages/django/core/management/init.py”,第 345 行,在执行 self.fetch_command(子命令).run_from_argv(self.argv) 文件“/home/dima/Work/Django/env/local/lib/python2.7/site-packages/django/core/management/init.py”,第 195 行,在 fetch_command klass = load_command_class(app_name, subcommand) 文件“/home/dima/Work/Django/env/local/lib/python2.7/site-packages/django/core/management/init.py”,第 39 行,在 load_command_class module = import_module('%s.management.commands.%s' % (app_name, name)) import_module 中的文件“/usr/lib/python2.7/importlib/init.py”,第 37 行 进口(名称) 文件“/home/dima/Work/Django/env/local/lib/python2.7/site-packages/django/core/management/commands/runserver.py”,第 16 行,在 从 django.db.migrations.executor 导入 MigrationExecutor 文件“/home/dima/Work/Django/env/local/lib/python2.7/site-packages/django/db/migrations/executor.py”,第 7 行,在 从 .loader 导入 MigrationLoader 文件“/home/dima/Work/Django/env/local/lib/python2.7/site-packages/django/db/migrations/loader.py”,第 10 行,在 从 django.db.migrations.recorder 导入 MigrationRecorder 文件“/home/dima/Work/Django/env/local/lib/python2.7/site-packages/django/db/migrations/recorder.py”,第 12 行,在 类迁移记录器(对象): 文件“/home/dima/Work/Django/env/local/lib/python2.7/site-packages/django/db/migrations/recorder.py”,第 26 行,在 MigrationRecorder 类迁移(模型。模型): 迁移中的文件“/home/dima/Work/Django/env/local/lib/python2.7/site-packages/django/db/migrations/recorder.py”,第 27 行 app = models.CharField(max_length=255) 文件“/home/dima/Work/Django/env/local/lib/python2.7/site-packages/django/db/models/fields/init.py”,第 1072 行,在 初始化 super(CharField, self).init(*args, **kwargs) 文件“/home/dima/Work/Django/env/local/lib/python2.7/site-packages/django/db/models/fields/init.py”,第 166 行,在 初始化 self.db_tablespace = db_tablespace 或 settings.DEFAULT_INDEX_TABLESPACE 文件“/home/dima/Work/Django/env/local/lib/python2.7/site-packages/django/conf/init.py”,第 55 行,在 getattr self._setup(名称) _setup 中的文件“/home/dima/Work/Django/env/local/lib/python2.7/site-packages/django/conf/init.py”,第 41 行 % (desc, ENVIRONMENT_VARIABLE)) django.core.exceptions.ImproperlyConfigured:请求设置 DEFAULT_INDEX_TABLESPACE,但未配置设置。您必须在访问设置之前定义环境变量 DJANGO_SETTINGS_MODULE 或调用 settings.configure()。 如何修复此错误?

【问题讨论】:

    标签: python-2.7 django-admin django-1.9


    【解决方案1】:

    如果您查看manage.py 脚本的作用(当您运行django-admin startproject myproject 时,此脚本是在myproject 目录中创建的),它会导出环境变量DJANGO_SETTINGS_MODULE,然后运行django-admin(嗯,它是通过django.core 完成的,但它几乎是这样做的)。

    django-admin 需要知道您的项目设置的 python 模块,并且该信息存在于该环境变量中。


    因此,在myproject 目录中,您应该运行:

    python manage.py runserver
    

    并且manage.py 脚本将为您进行环境设置,您可以强制django-admin 从命令行读取设置位置:

    django-admin runserver --pythonpath=. --settings="myproject.settings"
    

    如果您将项目目录包含在默认 pyhton 路径中,则不需要 --pythonpath 开关。

    【讨论】:

      【解决方案2】:
      mkdir djangoproject
      
      cd djangoproject/
      
      pip install virtualenv
      
      virtualenv myvenv
      
      pip freeze
      
      which python
      
      source myvenv/bin/activate
      
      pip install django
      
      pip freeze
      
      django-admin startproject myproject
      
      cd myproject/
      
      python manage.py runserver
      

      您的项目将成功启动

      django-admin startapp myapp
      

      现在,您需要进行一些与您创建的应用程序相关的设置。 (settings.py & urls.py)

      【讨论】:

        猜你喜欢
        • 2011-06-10
        • 1970-01-01
        • 1970-01-01
        • 2014-12-02
        • 1970-01-01
        • 1970-01-01
        • 2017-12-03
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多