如何在Rails中使用form_for Timesheet应用程序

时间:2011-06-18 22:24:31

标签: ruby-on-rails ruby-on-rails-3 forms erb

我有以下ActiveRecord模型

class User < ActiveRecord::Base
  has_many :timesheets
end

class Timesheet < ActiveRecord::Base
  belongs_to :user
  has_many :work_days
end

class WorkDay < ActiveRecord::Base
  belongs_to :timesheet
end

WorkDay模型包含hoursdayscomments等属性。

我无法弄清楚这种形式在rails中的样子。我看到了一些来自railscast的复杂形式,但仍然没有得到它。

我正在设想如下表格(7天):

06/19 (Day1)  06/20 (Day2)  06/21 (Day3)  ...  06/26 (Day 7)
textfield 1   textfield 2   textfield 3   ...  textfield4

<submit>

所以我有7个这样的文本字段(也可能每个都有评论)。

有人可以告诉我/向我解释form_for将如何找到这个。

1 个答案:

答案 0 :(得分:0)

你会有这样的事情 -

<%= form_for @timesheet do |f| %>

 # Fields for @timesheet attributes.     
 <% f.fields_for 7.times.map{@timesheet.workd_day.new}.each do |t| %>
   Hour: <%= t.text_field hour %>
   Days: <%= t.text_field days %>
   Comments: #one more fields for block for comments.
 <% end %>

 <%= f.sumit "Save" %>
<% end %>