当前位置: 首页 > 面试题库 >

找不到变量。声明为envvar或定义默认值

吴鸿彩
2023-03-14
问题内容

我对Django非常python-decouple陌生,并尝试配置为使用.env变量。我DB_PASSWORD not found. Declare it as envvar or define a default value.在尝试运行服务器时遇到问题。.env文件位于根目录中。这是我的代码:

settings.py

import os
from decouple import config

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'db_development',
        'USER': "db_user",
        'PASSWORD': config('DB_PASSWORD'),
    }
}

my_app.env

DB_PASSWORD=my_password

问题答案:

更改文件名:my_app.env必须为.env

source代码:

class AutoConfig(object):
    """
    Autodetects the config file and type.
    """
    SUPPORTED = {
        'settings.ini': RepositoryIni,
        '.env': RepositoryEnv,
    }


 类似资料:
  • Rust 语言可以先声明变量绑定,后面才将它们初始化。但是这种情况用得很少,因为这样很可能导致使用未 初始的变量。 fn main() { // 声明一个变量绑定 let a_binding; { let x = 2; // 初始化一个绑定 a_binding = x * x; } println!("a bi

  • 问题内容: 我应该给班级成员这样的默认值吗? 还是这样? 在这个问题中,我发现在两种情况下 是一个定义明确的操作。 我知道第一个方法会给我一个类变量,而第二个方法则不会。但是,如果我不需要类变量,而只需要为实例变量设置默认值,那么这两种方法是否一样好?还是其中一个比另一个更“ pythonic”? 我注意到的一件事是,在Django教程中,他们使用第二种方法声明模型。我个人认为第二种方法更优雅,但

  • let和const是JavaScript里相对较新的变量声明方式。 像我们之前提到过的,let在很多方面与var是相似的,但是可以帮助大家避免在JavaScript里常见一些问题。 const是对let的一个增强,它能阻止对一个变量再次赋值。 因为TypeScript是JavaScript的超集,所以它本身就支持let和const。 下面我们会详细说明这些新的声明方式以及为什么推荐使用它们来代替v

  • 我还没有在网上找到解决方案。我的所有活动都是声明的,但Android Studio经常会告诉我它找不到它们。它并不总是发生,而且似乎是随机发生的。我已经清理、无效并重新启动、重建,有时这会得到修复,然后在一段时间后再次发生。我在这个项目的团队中工作,我似乎是唯一一个有bug的人: 这是我的毕业生

  • 问题内容: 我不明白这个脚本有什么问题 我希望它在表中插入10个值,但是第二行有错误。 问题答案: MySQL不支持执行存储过程代码的匿名块。 您需要创建一个包含该代码的存储过程,然后调用它。 另外,您在插入语句的末尾缺少分号。我修好了 您可能还想使用concat()而不是+来生成名称,但是我将把更改留给您。 创建过程: 调用过程:

  • 主要内容:类型断言(Type Assertion),类型推断,变量作用域变量是一种使用方便的占位符,用于引用计算机内存地址。 我们可以把变量看做存储数据的容器。 TypeScript 变量的命名规则: 变量名称可以包含数字和字母。 除了下划线 _ 和美元 $ 符号外,不能包含其他特殊字符,包括空格。 变量名不能以数字开头。 变量使用前必须先声明,我们可以使用 var 来声明变量。 我们可以使用以下四种方式来声明变量: 声明变量的类型及初始值: 例如: 声明变量的类型,