在当前日期之前/之后列出具有日期属性的文章
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在当前日期之前/之后列出具有日期属性的文章相关的知识,希望对你有一定的参考价值。
我的网站上有一个管理页面,通常会列出用户在使用@ appointmentments.each时安排的所有约会。我试图找出如何在当前日期之后列出所有具有日期属性的约会,以及如何在当前日期之前列出所有约会日期。我查看了一堆stackoverflow示例,但无论何时我更改查询,都不再显示任何约会(如下面的约会)。继承人我的管理页面:
<div align="center">
<div class="col-md-6">
<div class="card">
<h5 class="card-header">All Currently Scheduled Appointments</h5>
<div class="card-body">
<%@appointments.where("date >= ?", Date.current) do | appt |%>
<%="Appointment for #{appt.owner_email} on #{appt.date} in the #{appt.time}"%> <%= link_to 'Edit', edit_appointment_path(appt) %>
</br>
<%end%>
</div>
</div>
</div>
</div>
下面是模式文件中的约会表,日期属性将它们存储为“2019-03-21”。
create_table "appointments", force: :cascade do |t|
t.string "VIN"
t.string "owner_email"
t.string "date"
t.string "time"
t.string "reason"
t.string "parts_needed"
t.string "hours_needed"
t.string "cost"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
end
答案
您的查询后,您似乎错过了.each
:
<% @appointments.where("date >= ?", Date.current).each do | appt | %>
<%= "Appointment for #{appt.owner_email} on #{appt.date} in the #{appt.time}"%> <%= link_to 'Edit', edit_appointment_path(appt) %>
</br>
<% end %>
此外,它有点超出您的问题的范围,但最佳做法是将您的查询逻辑放在您的控制器中。因此,在您的控制器操作中,您应该执行以下操作:
@appointments = Appointment.where("date >= ?", Date.current)
在你看来,你只是迭代@appointments
。
以上是关于在当前日期之前/之后列出具有日期属性的文章的主要内容,如果未能解决你的问题,请参考以下文章
排序/过滤 NSFetchRequest 如何编写将使用当前日期的排序描述符?