我试图让javascript_include_tag("jquery")
在rails内的Liquid标签中工作。我的问题是javascript_include_tag("jquery")
返回<script src="/javascript/jquery.js"></script>
。而不是:<script src="/assets/jquery_ujs.js"></script>
。同样在生产中,标签不会添加文件指纹。
class JqueryTag < ::Liquid::Tag
# Include the stylesheet tag link helper
include ActionView::Helpers::AssetTagHelper
def render(context)
return javascript_include_tag("jquery")
end
end
Liquid::Template.register_tag('jquery_tag', JqueryTag)
答案 0 :(得分:2)
最终找到答案。
包括include ActionView::Helpers::AssetTagHelper
还不够。
相反,我需要这样做。
class JqueryTag < ::Liquid::Tag
def render(context)
helpers.javascript_include_tag("jquery")
end
def helpers
@helpers ||= ActionController::Base.helpers
end
end
Liquid::Template.register_tag('jquery_tag', JqueryTag)