0

セッションがタイムアウトした場合に、ユーザーをログイン ページにリダイレクトしたいと考えています。ユーザーが自分の Web ページのリンクをクリックした場合に、ユーザーをログイン ページにリダイレクトするにはどうすればよいですか。また、リンクは ajax 呼び出しまたはページのリロード呼び出しにすることができます。

4

2 に答える 2

0

コントローラーで before_filter 関数を呼び出す必要があります。

次のように、この行をコントローラーに追加する必要があります。

Class NAMEsController < ApplicationController
before_filter :authenticate_user!

このためには、プロジェクトに「device」gem がインストールされていることを確認する必要があります。

(また)

を呼び出す代わりに、を呼び出すbefore_filter :authenticate_user!コントローラーに独自の関数を記述しますauthenticate_user!。何かのようなもの:

before_filter :logged_in

private
def logged_in
  your_function
  authenticate_user!
end

ajax 呼び出しの場合は、自分で少しロールする必要があります。これを出発点として試してください。

 before_filter :login_required, :only => [:index]

 before_filter(:only => :index) do |controller|
   login_required unless controller.request.format.js?
 end

また、いくつかのカスタム テスト スクリプトを実行する必要があります。整理するための単なるアイデアです。完全に機能しているかどうかはわかりません。

于 2012-10-26T11:14:31.340 に答える
0

コントローラーの before_filter 機能を使用すると、簡単に実現できます...

これらのフィルターは有効なセッションをチェックし、有効期限が切れた場合...ユーザーをログインページにリダイレクトします...レールで通知APIを確認することもできます

于 2012-10-26T07:01:36.027 に答える