如何将视图中的新文件链接到控制器?

时间:2013-06-10 11:17:38

标签: ruby-on-rails

我有一个控制器test_controller,此控制器的视图test带有index.html.erb。 该索引可通过/ test /.

访问

现在我想向这个控制器添加一个新的视图文件(所以我可以访问它中设置的变量),比如hello.html.erb,它应该是/ test / hello可用的。我将它放在与我的test index.htlm.erb相同的视图文件夹中。

我当前的routes.rb条目如下所示:

scope "/test/" do
  match "/hello" => "test#hello", :controller => "test"
  match "/" => 'test#index'
end

我可以调用/test/hello但我无法从test_controller访问我的变量。为什么这样,我该如何解决?

编辑:

test_controller看起来像这样:

class TestController < ApplicationController
  layout 'test'

  def index

    @error_logs = Error.order('creationTimestamp DESC')

  end

我想从@error_logs视图访问hello

1 个答案:

答案 0 :(得分:0)

您需要为hello操作设置一个控制器并设置所需的变量 - 例如,可以在hello视图中访问last_error,如:

class TestController < ApplicationController
  layout 'test'

  def index
    @error_logs = Error.order('creationTimestamp DESC')
  end

  def hello
    @last_error = Error.last 
  end 
end