0

特定の時間に他のコントローラで実行アクションを自動化したい。私はこのサイトで同様の投稿をもっと読みましたが、それらはすべていつでも、または遅れた仕事について語っています。しかし、私はそれがどのように機能するのか理解していません=(これは私が望むものの例です.

def create
@user = User.find(params[:user_id])
@client = @user.clients.create(params[:client])
if @client.save
 redirect_to user_clients_path(@user)
      else
 render :action => 'new'
      end
Timeout(@client.event_time) 
    redirect_to :controller => :some_controller, action => some_action
end
4

1 に答える 1

0

あなたが望む効果を理解するのは少し難しいです:

ユーザーが一定時間応答しなかった場合にタイムアウト アクションを実行する必要がある場合、最もクリーンな方法は、クライアント側で JavaScript を記述し、アクションを起動するタイマーを設定することです。タイマーが切れた場合、ユーザーがボタンを押すとタイマーがクリアされます。

クライアントを作成した後、ページを数秒間表示してから新しいページに切り替えたい場合は、表示する最初のページにメタリフレッシュを配置し、@client の後に目的のページに自動的にリダイレクトすることができます。 .event_time 秒。

于 2012-08-28T20:57:23.413 に答える