Text_field没有显示

时间:2014-02-02 19:51:19

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

我正在构建一个开源电子表格应用程序。到目前为止,它的rails应用程序有4个模型:table,row,column和item。

这是他们的样子:

Table.rb:

has_many :columns
has_many :rows
accepts_nested_attributes_for :columns

Column.rb

belongs_to :table
has_many :items

Row.rb

belongs_to :table
has_many :items
accepts_nested_attributes_for :items

item.rb的

belongs_to :row

在添加新行的页面上。你应该得到这样的东西:

enter image description here

因此列已经设置好,所以现在要添加新的,插入时应包含 row_id column_id 和<每个项目的强>值。

到目前为止,我的表单看起来像这样:

<%= nested_form_for [@table, @row] do |f| %>

 <% @columns.each do |column| %>
    <%= column.name %> <br>
    <%= f.fields_for :items do |item_form| %>
       <%= item_form.text_field :value %>
    <% end %>

 <% end%>

 <%= f.submit %>

<% end %>

我正在使用nested_form作为嵌套表单。但到目前为止,我无法获得项目值显示的文本框。另外,这是获得我想要的最好的方式(如图片),还是有更清洁的方式?

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

您需要为fields_for构建至少1个项目才能呈现任何内容。尝试在new控制器操作中执行此操作。

def new
  ...
  @row.items.build
end