簡體   English   中英

向Rails 3.1資產管道添加自定義方法?

[英]Add custom methods to Rails 3.1 asset pipeline?

如何將我的自定義方法添加到我的資產中,例如像Rails一樣使用'asset_path'幫助程序的css文件?

有了Rail自己的助手,我可以這樣寫:

# some.css.erb:

<%= asset_path 'a_image.png' %>

# How can I write this:

<%= my_custom_method 'a_image.png' %>

我已經嘗試了很多方法但是找不到合適的方法。 你知道嗎?

謝謝

我發現的最好方法是在app / helpers中創建一個自定義助手模塊:

module AssetsHelper
  def my_custom_helper_method
    # do something  
  end
end

然后在application.rb中,在應用程序配置之后(非常底部)要求它:

module Sprockets::Helpers::RailsHelper
  require Rails.root.join('app', 'helpers', 'assets_helper.rb')
  include AssetsHelper
end

您可以按照此問題找到更好的方法: https//github.com/rails/rails/issues/3282

資產視圖中沒有正常的幫助方法。 要添加自己的方法,您需要擴展Sprockets幫助程序模塊。 查看內置幫助程序的代碼 ,了解如何執行此操作。

簡而言之,您可以在lib中添加一個與此結構相同的文件,並添加您自己的方法。 不要忘記在您的應用程序初始化程序中包含新庫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM