我有一个rails 4应用程序,我有一些Javascript生成一个.jst.ejs模板,看起来像:
<!--name.jst.ejs which is in assets/javascripts/templates-->
<input type="text" name="store[name]" placeholder="Store Name" />
然后我有一个rails部分(在我的views目录中称为_name.html.erb),它看起来像:
<input type='text' name="store[name]" value="<%= @store.name%>" />
我要做的是保持这个干,只需要使用一个ejs文件(而不是基本上有一个重复的.ejs和.erb文件) .
有办法:
-
将一个ejs文件作为rails部分调用:例如:
<%= render "name" %>
(它呈现name.jst.ejs文件? -
另外,因为这两个文件有些不同,有没有办法区分代码,如果它被渲染为ejs vs erb?例如,类似于:
<input type='text' name="store[name]" <% if erb %> value="<%= @store.name %>" <% else %> placeholder="Store Name" <% end %> />
1 回答
<%= render "name.jst.ejs", :formats => [:erb], isErb: true %>