设计:如何在所有控制器中访问辅助方法

时间:2012-06-14 15:17:59

标签: ruby-on-rails-3 methods devise twitter-bootstrap undefined-reference

我正在尝试在导航栏标题(twitter bootstrap)中实现一个设计符号,但它只是告诉我资源不是一个已定义的方法。

我是否需要以某种方式继承设计辅助方法来实现这一目标?

1 个答案:

答案 0 :(得分:2)

当涉及到创建自定义登录页面时,它与您的控制器没有任何关系,它与通过辅助方法的帮助程序访问视图中的内容有关。您想将它们添加到application_helper.rb文件中。这里有方法概述:

https://github.com/plataformatec/devise/wiki/How-To:-Display-a-custom-sign_in-form-anywhere-in-your-app

简而言之,您基本上想将此添加到您的application_helper.rb

def resource_name
 :user
end

def resource
  @resource ||= User.new
end

def devise_mapping
  @devise_mapping ||= Devise.mappings[:user]
end

我在所有项目中都使用过这一次,在使用twitter bootstrap时在导航栏中自定义登录表单。它工作得很好,不需要你在其他地方更改任何其他代码。