无法在模型

时间:2015-04-29 15:52:48

标签: ruby-on-rails model environment-variables rake

我有一个环境变量,我在两个地方使用,一个是rake任务,另一个是模型方法。当我从rake任务中调用它时,一切都很好并且变量加载,但是当我从模型中调用它时它没有找到任何东西。它不是一个空错误或任何其他错误,它只返回一个空字符串。

是否有任何理由会覆盖环境变量或模型无法访问?

它用于构建网址:

http://#{AppEnv['env_var_1']}/this/is/#{AppEnv['env_var_2']}/a/path

- 还有一件事,myabe是相关的,模型方法被称为after_create

编辑:

感谢您的回复,但我的问题不是如何访问或使用env vars,因为您可以看到我已经在上面使用它们了。我的问题是为什么他们没有加载我的模型。

编辑2:

我有4个相关的AppEnv变量,[这真的很奇怪所以请耐心等待]当我检查它们运行rake任务(puts所有4个到日志时),它们是预期的。当我运行完全相同的类方法,但在模型中调用after_create时,其中3个变量为空,其中一个变量保存不同变量的值。那就是:

AppEnvVar1为空

AppEnvVar2的值为AppEnvVar4

AppEnvVar3为空

AppEnvVar4为空

如果我将方法更改为self.method(允许我从控制台运行它),并运行它,它就可以工作。因此,我非常确定在after过滤器期间我已将其缩小到AppEnv的问题。 关于在哪里挖掘的任何想法?

0 个答案:

没有答案