如何在controller_spec代码中包含一些助手? 我在dates_ads_helper中有一个名为“a_title(ads)”的方法,并返回self。 我如何在controller_spec测试中使用此方法?
当我尝试在我的controller_spec文件中调用它时,我收到此错误
NoMethodError:
undefined method `a_title'
答案 0 :(得分:1)
使用模板引擎中已包含的辅助方法:
Rails 2:使用@template变量。 Rails 3:具有漂亮的控制器方法view_context 使用a_title
# rails 3 sample
def controller_action
@price = view_context.a_title( 42.0 )
end
# rails 2 sample
def controller_action
@price = @template.a_title( 42.0 )
end
如果要在帮助程序和控制器之间共享方法,可以通过辅助方法定义:
class SomeController < ActionController::Base
helper_method :my_shared_method
...
def my_shared_method
#do stuff
end
end
问候!