1

我在我show.html.erbPerson模型中写了这一行。

 <%= f.simple_fields_for :holidays do |holiday| %>
   <%= holiday.input :number,
                     :label => holiday.day.name,
                     :input_html=>{
                       :required => false
                     } %>

我有两个问题:

1.假期在这里是什么意思。我的意思是它包含什么?

2. :label => holiday.day.name行给出错误 => undefined method day

有一个holidays包含 ( person_id, day_id, number).

4

2 回答 2

4

holiday是表单构建器对象。

要获取包装在表单构建器对象中的对象,您需要调用object它的方法。以下将起作用。

holiday.object.day.name
于 2015-08-18T12:17:08.980 回答
2

我假设您在Person模型中有假期关联:

  1. holidayf这里与in相同<%= form_for @person do |f| %>,它是一个表单构建器对象。

  2. 发生错误是因为holiday它本身不是模型的实例,而是表单构建器对象。所以你需要做类似的事情holiday.object.name

于 2015-08-18T12:18:26.660 回答