0

我建立了一个事件列表站点,并希望 Rails 按日期自动对这些链接(事件)进行排序,并在一天过去后将其删除。经过大量阅读,我认为删除已通过的帖子是一项 cron 工作。我期待对此提出任何建议。在这里,我试图通过表单中的日期时间字段列出这些事件。这是一些代码。

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 ?

4

2 回答 2

0

你是对的@pipebender。但是,如果您可以将索引操作的代码放在控制器中,那就更好了。

def index
  @links = Link.where("DATE(datetime) = DATE(?)", DateTime.now).order('created_at DESC')
end
于 2013-08-11T06:30:21.727 回答
0

在您的控制器中,您可以使用类似的东西

@links = Link.find(:all, :order => "created_at DESC")
于 2013-08-11T06:23:33.683 回答