ユーザが誤った認証情報でログインに失敗したときに警告ポップアップを表示しようとしています。ログインは完了しませんが、アラートは表示されません。Ruby on RailsでFlash.alertが動作しない
これは私が私の見解を持っているコードです:
<h2>The Maintenance Functions are restricted to authorized users only. Please login below.</h2>
<%= form_tag(dirlogin_pageout_path, :controller => "dirlogin", :action => "pageout", :method => "post") %>
<p>
<label for="name">User ID:</label><br>
<%= text_field_tag :userid, params[:userid] %>
</p>
<p>
<label for="password">Password:</label><br>
<%= password_field_tag :password, params[:password] %>
</p>
<%= submit_tag "login" %>
は、その後、私は持っている私のコントローラで:
class DirloginController < ApplicationController
def pagein
end
def pageout
user = User.find_by_userid(params[:userid])
if user and user.authenticate(params[:password])
redirect_to maintenance_maintenancenav_path
else
render 'pagein'
flash.alert = "Invalid name/password combination"
end
end
end
私もflash[:alert] = "Invalid name/password combination"
をやってみましたが、それはのように動作しません。よくどんな助けもありがとうございます。
だから、この作品!ただし、通知が表示されるまでに2回のログインに失敗し、ページが最初に読み込まれたときに通知テキストが表示されることがあります。そのすべての修正? – Frank
'render [statement]の前に' flash [:notice] 'を置いてください – Shannon
ありがとうございました! – Frank