我有2个模特:空缺和vacancy_schedule
Vacancy has_many :vacancy_schedules
Vacancy_schedule belongs_to :vacancy
在我的vacancy_schedule中,我想保存 vacancy_id,start_date,end_date,start_time,end_time
我看了一下嵌套表单,我想用嵌套表单做这件事:
class Vacancy < ActiveRecord::Base
has_many :vacancy_schedueles
accepts_nested_attributes_for :vacancy_schedueles
end
但是我如何在我的视野中显示这个?
我希望能够按下+按钮并继续在彼此之下添加日期。
我猜我只想在另一个模型中添加1个日期,我必须做这样的事情:
<%= f.simple_fields_for :vacancyscheduele do |t| %>
<%= t.input :start_date, :as => :date_picker, :label => false%>
<%= t.input :end_date, :as => :date_picker, :label => false%>
<%= t.input :end_hour %>
<%= t.input :end_hour %>
<% end %>
但是当我想要添加一个+号并突然显示第二个simple_fields_for,用户可以输入下一个日期时,我不知道从哪里开始。
当他按下提交时,它会同时提交或者当他删除其中一个日期时正确删除。
在vacancy_schedule中,最终结果应该是这样的:
Vacancy_id / start_date / end_date / start_time / end_time
1 / 1/1/2015 / 2/1/2015 / 14:30 / 19:30
1 / 5/1/2015 / 6/1/2015 / 11:30 / 12:30
1 / 10/1/2015 / 11/1/2015 / 16:30 / 19:30
2 / 6/1/2015 / 7/1/2015 / 14:30 / 19:30
etc etc
非常感谢任何帮助或提示。
答案 0 :(得分:2)
使用以下代码:
在config / initializers&amp;中创建一个date_format.rb文件。写下面的代码:
类ActiveSupport :: TimeWithZone
def as_date(options = {})
的strftime(&#39;%间 - %D-%Y&#39;)
结束
def as_time(options = {})
的strftime(&#39;%I:%M&#39;)
端
端
在视图中,编写以下代码:
&lt;%= f.simple_fields_for:vacancyscheduele do | t | %GT;
&lt;%= t.start_date.as_date%&gt;
&lt;%= t.end_date.as_date%&gt;
&lt;%= t.start_hour.as_time%&gt;
&lt;%= t.end_hour.as_time%&gt;
&lt;%end%&gt;