bod*_*ous 7 ruby rack ruby-on-rails rspec-rails
在我的Rails应用程序中,我正在访问我的一个控制器操作中的env哈希.
有点像:
def my_before_filter
env['some.key'] = "Something or other"
end
Run Code Online (Sandbox Code Playgroud)
这对我的要求非常有用.
如果我在测试环境中启动我的Rails应用程序,并访问如下操作:
# /users in UsersController#index
def index
puts env.inspect
end
Run Code Online (Sandbox Code Playgroud)
然后,env哈希的内容按预期输出到控制台.
当我从RSPec示例中获取此操作时,输出是空哈希?
it 'should get the index action' do
get :index
end
.....{}.... # rspec output
Run Code Online (Sandbox Code Playgroud)
为什么env哈希是空的?
我已经构建了一个虚拟轨道应用来展示这一点
gef*_*gef 10
使用
request.env
Run Code Online (Sandbox Code Playgroud)
而不仅仅是控制器代码中的env.
例如/
def index
puts request.env.inspect
end
Run Code Online (Sandbox Code Playgroud)
希望有帮助吗?
另请注意:在使用github repo时,在运行服务器时,需要删除public/index.html以使根路由起作用.
| 归档时间: |
|
| 查看次数: |
2130 次 |
| 最近记录: |