2011-07-26 4 views
0

私は認証目的でdeviseを使用していますが、すべての機能が正常に動作しています。動的フラッシュメッセージを作成する

ユーザーがサインアウトすると、表示されるフラッシュメッセージは"Signed out successfully."です。これはdevise.en.ymlでカスタマイズできます。

しかし、これは動的である(like) "user.emailが正常にログアウトした"ようにする必要があります。フラッシュメッセージを動的にする方法を教えてください。

+1

あなたは "{user.email}が成功裏に署名%" を試したことがありますか? –

+0

devise.en.ymlファイルから行を編集したいですか? – shajin

+0

はい、私はうまくいけばうまくいきません。多分、この部分をdeviseで上書きして、i18nが補間するようにユーザーに伝える必要があります。http://guides.rubyonrails.org/i18n.html#interpolation –

答えて

1

私はこのことを表示することができました。

これを行うには、コントローラに 'devise'フォルダを作成し、新しいコントローラ 'sessions'を作成し、残りの作業を行います。私は私のコードを与えている

def create 
    resource = warden.authenticate!(:scope => resource_name, :recall => "new") 
    session["resource_email"] = resource.email 
    flash[:notice] = "#{resource.email} signed in successfully.." 
    sign_in_and_redirect(resource_name, resource) 
end 

def destroy 
    flash[:notice] = "#{session["resource_email"]} signed out successfully.." 
    sign_out_and_redirect(resource_name) 
end 

関連する問題