Rails のstylesheet_path
ヘルパーをオーバーライドしようとしていますが、方法が見つかりません。モジュールを開いActionView::Helpers::AssetTagHelper
てそこでオーバーライドすることはできません。Rails が新しいメソッドを取得しないためです。
おそらくモジュールが混在しているためだと思いますが、どうすれば回避できますか?
Rails のstylesheet_path
ヘルパーをオーバーライドしようとしていますが、方法が見つかりません。モジュールを開いActionView::Helpers::AssetTagHelper
てそこでオーバーライドすることはできません。Rails が新しいメソッドを取得しないためです。
おそらくモジュールが混在しているためだと思いますが、どうすれば回避できますか?
stylesheet_link_tag
通常とは異なる結果になるようにこれを行っていますか?もしそうなら、ヘルパーでそれをオーバーライドしてください:)
または、本当に をオーバーライドしたい場合stylesheet_path
は、エイリアスも再定義する必要があります。不思議なことに、エイリアスはそのエイリアスを介してのみアクセスされます (Rails 2.3.2)。たとえば、これを入れるenvironment.rb
とうまくいきました:
module ActionView
module Helpers
module AssetTagHelper
def stylesheet_path(source)
"x"
end
alias_method :path_to_stylesheet, :stylesheet_path
end
end
end
私は個人的にこのルートには行きませんが、必要な場合はうまくいくはずです:)