【问题标题】:Use JS Template as Rails Partial使用 JS 模板作为 Rails 部分
【发布时间】:2014-05-25 15:58:21
【问题描述】:

我有一个 rails 4 应用程序,其中有一些 Javascript 可以生成一个 .jst.ejs 模板,如下所示:

<!--name.jst.ejs which is in assets/javascripts/templates-->
<input type="text" name="store[name]" placeholder="Store Name" />

然后我有一个 Rails 部分(在我的视图目录中称为 _name.html.erb),如下所示:

<input type='text' name="store[name]" value="<%= @store.name%>" />

我想要做的是保持这个 DRY,并且只需要使用一个 ejs 文件(而不是基本上有一个重复的 .ejs 和 .erb 文件)。

有没有办法:

  1. 将 ejs 文件作为 rails 部分调用:例如:&lt;%= render "name" %&gt;(呈现 name.jst.ejs 文件?
  2. 另外,由于这两个文件有些不同,如果将代码呈现为 ejs 与 erb,是否有办法区分代码?例如,类似:

&lt;input type='text' name="store[name]" &lt;% if erb %&gt; value="&lt;%= @store.name %&gt;" &lt;% else %&gt; placeholder="Store Name" &lt;% end %&gt; /&gt;

【问题讨论】:

    标签: javascript ruby-on-rails ruby ruby-on-rails-4 ejs


    【解决方案1】:
    1. 尝试类似:

      &lt;%= render "name.jst.ejs", :formats =&gt; [:erb], isErb: true %&gt;

    2. 然后在部分中,检查 isErb 是否存在

    【讨论】:

      猜你喜欢
      • 2021-04-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-27
      • 1970-01-01
      • 2015-11-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多