自动删除帖子Rails 3

时间:2011-04-16 09:16:37

标签: ruby-on-rails

我正在构建一个应用程序,用户可以决定何时删除他们的帖子,但我不知道如何在Rails 3中执行此操作。

3 个答案:

答案 0 :(得分:1)

据我所知,你必须使用cron

答案 1 :(得分:1)

有时您可以取消激活帖子而不是执行数据库命令“删除”。如果您取消激活,那么您将保留统计信息和评论。

class Post
  attr_protected :published_on, :deleted_on
  belongs_to :user
  scope :published, lambda{ where("published_on >= ?", Time.now).where("deleted_on IS NULL or deleted_at < ?", Time.now)}

end
稍后在您的控制器中

@posts = @user.posts.published.paginate(params[:page])

答案 2 :(得分:0)

我假设您希望在特定日期(时间)自动删除帖子,并且您的用户可以设置该日期(时间)。要实现这一点,您必须使用cron作业。 Here您可以找到更多相关信息。

另一个(真正的脏)解决方案是每次访问您的应用程序时执行一个方法,并查找需要删除的帖子。