1

書籍が25秒以上前に作成された場合、データベースの列を更新しようとしています(デプロイすると、7日前になりますが、それほど長く待つことはできません:))。

モデル:

class Book < ActiveRecord::Base
  attr_accessible :author, :date, :description, :order, :title, :user_id, :author, :status, :queued
  belongs_to :user
end

class User < ActiveRecord::Base
  attr_accessible :email, :password, :password_confirmation, :remember_me, :user_id, :name, :bio
  has_many :books
end

コントローラ:

class UsersController < ApplicationController

def show
  @user = User.find(params[:id])

  @book = Book.new

  @books = Book.select("DISTINCT name, id") # Not used right now

  @sequence = @user.books

  @sequence.each do |book|
    book.created_at >= 25.seconds.ago ? book.queued = false : nil
  end
end

ユーザーショービュー:

<% @sequence.order("created_at DESC").where(:queued => false).each do |book| %>

私はこれを機能させることにさえ近づいていますか?私は何が間違っているのですか?ご覧のとおり、25秒後に「queued」属性をfalseに変更したいと思います...

編集

これを機能させるには、Herokuのスケジューラのようなものを使用する必要があると言われました。そのようなものなしでこれがデータベースを更新する方法はありませんか?

4

1 に答える 1