7

我在我的 settings.py 文件中不断收到关于 environ 的导入错误,我也通过我的 .venv 文件中的诗歌安装了它。这可能是设置文件之外的错误吗?

`
import environ

env = environ.Env(
    DEBUG=(bool, False),
    ENVIORNMENT=(str, 'PRODUCTION'),
)

environ.Env.read_env()

ENVIRONMENT= env.str('ENVIRONMENT')


SECRET_KEY = env.str('SECRET_KEY')

DEBUG = env.bool('DEBUG')

ALLOWED_HOSTS = tuple(env.list('ALLOWED_HOSTS'))

`
4

3 回答 3

13

确保您使用的是所需的 python 解释器,您的virtualenv 设置正确,并且所需的 django-environ 已通过以下方式安装在该 virtualenv 中

(inside venv) pip install django-environ
于 2020-08-20T19:35:14.230 回答
2

由于以下原因,可能会出现此问题:

  1. 您正在使用。虚拟环境,但是您在虚拟环境之外安装了模块。
  2. 您尚未在 INSTALLED_APPS 中的 settings.py 文件中添加“环境”。(基于此软件包的引用,此软件包特别不需要!)
于 2020-08-20T19:34:49.203 回答
0

确保您已完成以下三个操作:

  1. 通过以下命令安装包:

    (inside venv) pip install django-environ

  2. 选择正确的python解释器(你安装包的环境)

  3. 在项目根目录中创建一个“.env”文件。根据其参考文档here,它应该由以下内容组成:

DEBUG=on
SECRET_KEY=your-secret-key
DATABASE_URL=psql://user:un-githubbedpassword@127.0.0.1:8458/database
SQLITE_URL=sqlite:///my-local-sqlite.db
CACHE_URL=memcache://127.0.0.1:11211,127.0.0.1:11212,127.0.0.1:11213
REDIS_URL=rediscache://127.0.0.1:6379/1?client_class=django_redis.client.DefaultClient&password=ungithubbed-secret
于 2021-12-20T19:55:40.617 回答