我有一个用户可以办理入住/退房手册的系统,我想这样做,这样用户可以保留一周的书。
如何为我的图书借阅项目'created_at + 1周'?
目前我有一个这样的表格,显示一些信息: - 在“登记入住时间”栏中,我想添加退房时间+ 7天
<table>
<tr>
<th>Author</th>
<th>Title</th>
<th>User Name</th>
<th>User Email</th>
<th>Check-Out time</th>
<th>Check-In time</th>
</tr>
<% for item in @books_loaned %>
<tr>
<td><%= item.book.author %></td>
<td><%= item.book.title %></td>
<td><%= item.user.name %></td>
<td><%= item.user.email %></td>
<td><%= item.created_at %></td>
<td><%= button_to "Check-In", {:controller => :librarian, :action =>
:check_in}, {:method => :post} %></td>
</tr>
<% end %>
</table>
答案 0 :(得分:2)
有很多可行的方法可以做到这一点:
如果您只想显示Date
时间,那么:
<%= item.created_at.to_date.next_week %>
#this will add 6 days and output will be seventh day
或者如果您想手动添加天数
<%= item.created_at.to_date+7.days %>
或
<%= item.created_at.to_date+1.week %>
如果您还想显示时间,请从上面的代码中删除.to_date
答案 1 :(得分:1)
简单添加7.days
在你的例子中:
<table>
<tr>
<th>Author</th>
<th>Title</th>
<th>User Name</th>
<th>User Email</th>
<th>Check-Out time</th>
<th>Check-In time</th>
</tr>
<% for item in @books_loaned %>
<tr>
<td><%= item.book.author %></td>
<td><%= item.book.title %></td>
<td><%= item.user.name %></td>
<td><%= item.user.email %></td>
<td><%= item.created_at + 7.days %></td>
<td><%= button_to "Check-In", {:controller => :librarian, :action =>
:check_in}, {:method => :post} %></td>
</tr>
<% end %>
</table>
显然也可能1.week
。通过ActiveSupport在Rails中提供所有内容:http://edgeguides.rubyonrails.org/active_support_core_extensions.html。