2017-03-21 26 views
0

我已经将js钩入了formtastic生成的输入ID。输入ID的格式为MODELNAME_INPUTNAME。由于我们的页面分布在多个页面中,并且通常经过A/B测试,所以模型名称会不断变化,例如从“candidate_application_page3b”到“candidate_application_page1”。这意味着很多转向我们的JS代码,或者一层抽象来翻译ID。这些都使得JS难以维护。formtastic前缀用模型名称输入id - 我们可以重写这个吗?

我们想解决这个问题的方法是改变formtastic计算id名称的方式。

这个在formtastic中是否存在?如果我们可以覆盖它的首选项,那么在semantic_form_for级别的输入ID中包含模型名称,那将是最容易的事情。 我们找到了:namespace的参数,但是只会在id的开头添加其他词,它不会让我们更改modelname位。

+0

我似乎记得我们找到了答案,但是它真的很难搜索,因为它是一些两个字母的关键字,比如':on'或':in'。对不起,我没有答案。 –

回答

1

你已经接近你的上述评论,可以使用:as选项来做到这一点。

<%= semantic_form_for @post, as: "article" do |f| %> 
    <%= form.input :title %> <!-- #article_title --> 
<% end %> 
相关问题