3

How can I access the request object in a rails initializer?

4

2 回答 2

4

AFAIK 这是不可能的。

每个发送到服务器的请求都会生成一个请求对象,因此在您初始化 Rails 应用程序时它不存在。

我会惊讶地看到一个答案另有说明,但这对我来说没有意义。

于 2013-01-09T14:33:42.767 回答
0

我参加了一个hackhands会议并得到了这个问题的答案。

在您的 application.rb 文件中,您可以定义变量并设置它们的值

config.heroku_worker_count = 0

然后,您可以使用以下语法访问和操作 app 范围内的变量,例如在模型中:

Rails.application.config.heroku_worker_count = 1

这会保留价值观,这就是我想要一个对象的原因。但是,正如公认的答案所述,使用如下调用是不可行的:

config.heroku_worker_count = MyModel.new
于 2015-03-31T13:30:04.477 回答