编辑和保存文件后,没有输入在Simple Form中发现错误

时间:2016-03-22 02:37:35

标签: ruby-on-rails ruby input simple-form-for

我尝试使用Simple Form For实现自定义虚假输入(found in this article)。这是我的代码:

<%= simple_form_for :results, { url: admin_add_sites_path } do |f| %>
  <%= f.input :no_merchandisers, as: :fake %>
  <%= f.input :site_codes_to_add, as: :fake %>
  <%= f.submit "Submit" %>
<% end %>

当我第一次实现输入时,我收到错误:

No input found for fake

这个Stack overflow question的答案告诉我重启我的服务器。这暂时为我解决了上述问题。

但是,每当我编辑和保存文件时(编辑控制器文件时都会发生这种情况),错误会再次弹出,我必须重新启动服务器才能继续。有没有其他人经历过这个?有没有解决这个问题?

1 个答案:

答案 0 :(得分:0)

我经常使用这个问题的一些解决方案(虽然我不使用简单表格)。首先是使用value: nil。所有这一切都会覆盖通常查找模型属性的默认value方法。它仍然以表格的其余部分提交。

<%= f.input :no_merchandisers, value: nil %>

第二个解决方案是使用“标签”输入,具体取决于您的输入实际输入:

<%= text_field_tag "results[no_merchandisers]", value_variable %>

或者也许:

<%= check_box_tag "results[no_merchandisers]", value_variable, checked_variable %>

现在,这些解决方案都没有修复as: :fake问题,只是完全替换它。我不熟悉Simple Form,所以我不知道这些附加代码将如何(或不会)起作用。