Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Elixir 是否假定您在更新config.exs后运行mix deps.compile?_Elixir_Phoenix Framework - Fatal编程技术网

Elixir 是否假定您在更新config.exs后运行mix deps.compile?

Elixir 是否假定您在更新config.exs后运行mix deps.compile?,elixir,phoenix-framework,Elixir,Phoenix Framework,我已经开始使用Elixir+Phoenix框架,并开始合并用于用户注册/身份验证的库 addict的文档告诉我更新:addict应用程序的config.exs config :addict, not_logged_in_url: "/error", db: MyApp.MyRepo, user: MyApp.MyUser, : 在我运行mix deps.compile以获取配置之前,替换db

我已经开始使用Elixir+Phoenix框架,并开始合并用于用户注册/身份验证的库

addict的文档告诉我更新
:addict
应用程序的
config.exs

config :addict, not_logged_in_url: "/error",
                db: MyApp.MyRepo,
                user: MyApp.MyUser,
                    :
在我运行
mix deps.compile
以获取配置之前,替换db和用户值不会生效

现在我的问题是,在对
config.exs
进行更改时,是否假定运行
mix deps.compile


瘾君子医生并没有说明这一点,对于像我这样的新手来说,这并不明显。我只是在查看addict的代码时才意识到这一点,并看到它是在编译时通过模块属性设置的(因此有必要运行
mix deps.compile
)。

只有当依赖项具有编译时配置时,才需要重新编译它们。编译时配置本身并不常见,因此您应该ping
瘾君子
人员,让他们更好地了解编译后有人配置
瘾君子
时会发生什么。或者说服他们,如果可以的话,首先避免编译时配置。

要对此进行扩展(经过一点实验;我不完全确定),
Application.get_env…
从config.exs读取似乎无法在不重新编译的情况下获取新值,无论是在模块属性中还是在运行时调用的函数中执行
get_env
。如果需要运行时配置,建议使用第三方库。