标签:javascript ruby-on-rails ruby actionview
为了包含我在某些页面上只需要的一段javascript,我放了
= javascript_tag do
= render "inserts_js_enhanced_element.js.erb"
在我的haml文件中.
现在我在测试中收到警告:
DEPRECATION WARNING: Passing a template handler in the template name is
deprecated. You can simply remove the handler name or pass render
:handlers => [:erb] instead.`
但是,当我将线路更改为
= render "inserts_js_enhanced_element.js", :handlers => [:erb]
无论如何,我得到一个新的警告,说
DEPRECATION WARNING: Passing the format in the template name is
deprecated. Please pass render with :formats => [:js] instead.
如果我确实改变了
= render "inserts_js_enhanced_element", :handlers => [:erb], :formats => [:js]
它给了我错误
ActionView::Template::Error:
Missing partial application/inserts_js_enhanced_element with {:handlers=>[:haml, :builder, :erb, :coffee], :locale=>[:de], :formats=>[:html]}.
现在格式似乎没有改为:js和处理程序不仅仅是:erb.
我应该如何正确输入JS-ERB?
更新:
js.erb文件具有表单
<% session_val = determine_session_val_from_config %>
jQuery(document).ready(function() {
//JS Code
}
解决方法:
好:)
我想我自己找到了this SO文章的答案
= render(:partial => 'inserts_js_enhanced_element', :handlers => [:erb], :formats => [:js])
工作,并没有给我折旧警告
标签:javascript,ruby-on-rails,ruby,actionview 来源: https://codeday.me/bug/20190714/1460920.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。