Assety we własnym gemie

Od dłuższego czasu (bo tylko w weekendy) próbuję stworzyć serwis wykorzystujący składnię wiki. Wiem że jest Textile ale mi zależy na “zgodności” z TikiWiki.
Udało mi się już zbudowanie parsera i stworzyłem mojego pierwszego gem-a. Większość rzeczy działa ale nie mogę sobie poradzić z grafikami zawartymi w tym gemie. W sieci znalazłem informacje, że należy z tego gema zrobić Engine żeby system widział assety i tak też zrobiłem. Tylko jak się do tych assetów odwoływać?

[code]module Wiki
module Plugins
class Caution

  def render(text,options={})
    @options = {:title=>''}.merge(options)
    content = "<div class=\"caution_box\">\n"

content += “

    content += image_tag("wiki/caution.png",:style=>'float:left;')
    content += "\n<div class=\"caution_box\">\n"
    content += "<p><b>#{@options[:title]}</b></p>\n" unless @options[:title].blank?
    content += text
    content += "\n</div>\n</div>\n"
    content
  end
end

end
end[/code]
Jak widać próbowałem asset_path i image_tag ale zawsze dostaję komunikat, że taka metoda nie istnieje w klasie Wiki::Plugins::Caution. Faktycznie nie istnieje. Próbowałem zatem

class Caution include ActionView::Helpers::AssetTagHelper (...)
Niestety mam teraz komunikat

undefined local variable or method `config' for #<Wiki::Plugins::Caution:0x7f2524f91c58 @options={:title=>""}>

Jak sobie z tymi assetami radzić?

Z tym problemem już sobie poradziłem. Zamieszczam prrzykład. Może komuś się przyda, może ktoś poda lepsze rozwiązanie …

[code=ruby]module Wiki
module Plugins
class Caution
include Sprockets::Helpers
include Sprockets::Helpers::RailsHelper
include Sprockets::Helpers::IsolatedHelper

  def render(text,options={})
    @options = {:title=>''}.merge(options)
    content = "<div class=\"caution_box\">\n"
    content += "<img src='#{ path_to_image("wiki/caution.png") }' style='float:left;' />"
    content += "<p><b>#{@options[:title]}</b></p>\n" unless @options[:title].blank?
    content += text
    content += "\n</div>\n"
    content
  end
end

end
end[/code]