undefined方法和attr_accessor

时间:2017-06-17 20:37:13

标签: ruby-on-rails ruby ruby-on-rails-4 attr-accessor

我想从不在我模型中的输入中收集数据。所以,我试图使用“attr_accessor”,但它不起作用,我不知道为什么...... 我的控制器中有一行:

attr_accessor :nbr_blocs

我的表单中有很少的部分(用simpleform制作):

<%= simple_form_for @newsletter, method: "post", url: (gestion_newsletters_assist_step2_send_path) do |f| %>
[...]
<%= f.input :"nbr_blocs", :as => :integer, :input_html => { :maxlength => 2 } %>
[...]
<% end %>

我的错误是:“未定义的方法`nbr_blocs'

我该怎么办? 谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

来自SimpleForm docs

#input(attribute_name, options = {}, &block) ⇒ Object

因此,:nbr_blocs必须是@newsletter的属性,而不是Controller访问者。我想你可以使用simple_fields_for作为你模型中没有的输入,坚持我不确定:

<%= simple_form_for @newsletter do |f| %>
  <%= f.input :attribute %>

  <%= simple_fields_for :not_model do |n| %>
    <%= n.input :nbr_blocs %>
  <% end %>
<% end %>