原创作者: hideto
阅读:1388次
评论:0条
更新时间:2011-05-26
Rails默认为每个controller指定一个helper,所有的helper都放在app/helpers目录下
但是有些Helper我们希望是全局共享的,一般我们将这些Helper方法都扔在ApplicationHelper模块里
其实我们可以在app/helpers目录下建立我们自定义的Helper模块,如formatting_helper、path_helper等
要想使用这些Helper,我们只需修改ApplicationController即可
或者直接使用helper :all来使用所有的Helper
但是有些Helper我们希望是全局共享的,一般我们将这些Helper方法都扔在ApplicationHelper模块里
其实我们可以在app/helpers目录下建立我们自定义的Helper模块,如formatting_helper、path_helper等
# formatting_helper.rb module FormattingHelper def free_when_zero(price) price.zero? ? "FREE" : number_to_currency(price) end def yes_no(bool) bool? 'Yes' : 'No' end end # path_helper.rb module PathHelper def articles_path_for_article(article) if article.tip? tips_articles_path else news_articles_path end end def product_path(product) if product.kind_of? Book book_path(product) else movie_path(product) end end end
要想使用这些Helper,我们只需修改ApplicationController即可
class ApplicationController < ActionController::Base helper :formatting, :path end
或者直接使用helper :all来使用所有的Helper
评论 共 0 条 请登录后发表评论