SECRET_KEY设置不能为空 - django + pycharm

时间:2017-01-20 00:36:20

标签: python django pycharm settings

我确实搜索了几个帖子但是没有一个帮助过。即便是最近的也没有帮助。

我目前正在使用pyCharm使用虚拟环境安装django。 因为我已经尝试了很多方法,但没有运气使用pycharm来运行项目 但是,如果我使用python manage.py runserver在终端中执行此操作,则服务器可以正常运行。在所有设置之后,在pyCharm中不知怎的,它不会让我跑。我在pycharm中哪里设置错了?

无论如何,我收到此错误

raise ImproperlyConfigured("The SECRET_KEY setting must not be empty.") django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not be empty.

我的manage.py因为有些帖子正在谈论这个但是我看到它正确设置了

#!/usr/bin/env python
import os
import sys

if __name__ == "__main__":
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "CodingEntrepreneurs.settings")
    try:
        from django.core.management import execute_from_command_line
    except ImportError:
        # The above import may fail for some other reason. Ensure that the
        # issue is really that Django is missing to avoid masking other
        # exceptions on Python 2.
        try:
            import django
        except ImportError:
            raise ImportError(
                "Couldn't import Django. Are you sure it's installed and "
                "available on your PYTHONPATH environment variable? Did you "
                "forget to activate a virtual environment?"
            )
        raise
    execute_from_command_line(sys.argv)

我的settings.py(不多说,我确实有KEY)

# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = 'SECRET_KEYSECRET_KEYSECRET_KEYSECRET_KEYSECRET_KEY'

# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True

`

我的文件夹结构

my folder structure

我的run-debug config

my run-debug config

我的django-framework设置

my django-framework setting

3 个答案:

答案 0 :(得分:4)

由于这是1月20日的问题,我认为它已经解决了。不过,我想分享我对同一问题的解决方法。

我在这里遇到了同样的问题。我已经挣扎了一段时间。最后,Environment Variables似乎存在问题,如第二个屏幕截图所示(Run/Debug Configurations

我已通过更新

中的Environment Variables路径修复了此问题
DJANGO_SETTINGS_MODULE=portfolio; <..crop..>

DJANGO_SETTINGS_MODULE=portfolio.settings; <..crop..>

我必须将settings添加到DJANGO_SETTINGS_MODULE路径。

答案 1 :(得分:0)

看起来PyCharm不知道你的设置文件在哪里。基本上,如果你曾经使用runserver&amp;看到这样的密钥错误,你的设置没有正确加载。

在django配置窗口中,您已经到达那里,设置定义是文件夹/目录。这应该是您的设置文件的路径。 manage.py定义了路径,Pycharm没有。

此外,如果右键单击项目根目录并选择“将目录标记为”&gt; '来源根源'。这将有助于Pycharm为自己解决问题。您还可以标记默认模板目录,或排除目录。

我还建议在项目中使用小写的app(文件夹)名称。

最后,您的项目结构与大多数人习惯的“标准”略有不同。你可能应该有类似的东西;

- CodingEntrepreneurs
-- .venv
-- myproj
--- myapp

然后在Pycharm中,您将从myproj创建一个项目,而不是CodingEntrepreneurs,并且myproj将被标记为您的源根目录。

阅读有关项目结构的这篇文章; http://www.revsys.com/blog/2014/nov/21/recommended-django-project-layout/

除此之外,您还可以通过python manage.py runserver --settings=CodingEntrepreneurs.settings

指定要运行的设置文件

答案 2 :(得分:0)

我遇到了同样的问题,原来我是问题所在:

我在settings.py文件的顶部设置了SECRET_KEY ='mysecretkey',但没有进一步删除Django默认设置:

# Make this unique, and don't share it with anybody.
SECRET_KEY = os.environ.get('SECRET_KEY') 

...因此变量每次都会被覆盖。

希望这可以帮助像我一样愚蠢的人,偶然发现相同的问题