= "#{schedule.time.to_s(:event_date) + " @ " + schedule.time.to_s(:event_time) + " - " + (schedule.time + schedule.duration.to_i.minutes).to_s(:event_time)}"
将输出
Fri, 31 Aug, 2012 @ 10:40 PM - 11:40 PM
答案 0 :(得分:1)
不确定时间格式是否可以做得更好,但你的字符串应该更像:
"#{schedule.time.to_s(:event_date)} @ #{schedule.time.to_s(:event_time)} - #{(schedule.time + schedule.duration.to_i.minutes).to_s(:event_time)}"
答案 1 :(得分:1)
您可以在计划帮助程序中隐藏此复杂行,您也可以定义schedule.end_time
module ScheduleHelper
def schedule_time schedule
html = ''
html << schedule.time.to_s(:event_date)
html << ' @ '
html << schedule.time.to_s(:event_time)
html << ' - '
html << schedule.end_time.to_s(:event_time)
raw html
end
end
class Schedule
def end_time
self.time + this.duration.to_i.minutes
end
end
<%= schedule_time schedule %>
答案 2 :(得分:1)
首先 - 抛弃几个优点和支撑,以达到这样的目的:
= "#{schedule.time.to_s(:event_date)} @ #{schedule.time.to_s(:event_time)} - #{(schedule.time + schedule.duration.to_i.minutes).to_s(:event_time)}"
如果在多个地方使用这种结构,将它封装到帮助器可能也很有用。