Я создал сайт, посвященный событиям, и хотел бы, чтобы рельсы автоматически сортировали эти ссылки (события) по дате и удаляли их по прошествии дня. После обширного чтения я предполагаю, что удаление сообщений, которые прошли, - это задание cron. Я с нетерпением жду любых предложений для этого. Прямо здесь, я пытаюсь перечислить эти события полем datetime в форме. Вот немного кода.Как сделать приложение rails упорядочить сообщения пользователей (события) по дате и удалить прошедшие события?
class LinksController < ApplicationController
def show
@link = Link.find(params[:id])
@comment = Comment.new
end
def new
authenticate_user!
@link = Link.new
end
def create
@link = Link.new(params[:link])
Так в index.html.erb:
<% @links.each do |link| %>
<li><%= link_to link.title, link %><br></li>
<%= link_to "comments", link %>
И в новом виде ссылки у меня есть:
<div class="field">
<%= f.label :datetime %><br />
<%= f.text_field :datetime %>
</div>
Могу ли я просто заменить, что
<% @links.each do |link| %>
с чем-то вроде
<% @links.where("DATE(datetime) = DATE(?)", DateTime.now)
Даже очень толкнул в нужном направлении. Хотя, возможно, мне нужен @ links.order_by?
Да, хотя я не хотел, чтобы сообщения, которые были созданы, были созданы, а не дату и время события. Возможно, вместо «created_at DESC» я мог бы использовать что-то, ссылающееся на атрибут поля datetime. – pipebender