2014-10-29 3 views
0

Я не могу отобразить notice переменная в моем шаблоне. Код ниже:Не удается отобразить флэш-уведомление

class UserController < ApplicationController 
    protect_from_forgery 
    skip_before_filter :require_login, :except=>[:list,:add,:delete,:update] 
    def add 
    end 

    def delete 
    end 

    def update 
    end 

    def list 
    end 

    def login 
    end 

    def logout 
    end 

    def isloggedin 
    login = params[:login].to_s 
    password = params[:password].to_s 
    logged_in = User.where(:user_name => login,:password => password).limit(1) 
    if not logged_in.blank? 
     session[:userinfo] = logged_in 
     redirect_to '/event/list' 
    else 

     flash[:notice] = 'Unable to login' 
     redirect_to '/user/login' 
    end 

    end 
end 

файл шаблона

<div><%= notice %></div> 
+1

Изменить код шаблона файла следующим образом: ''

<%= flash[:notice] %>
, а затем повторите попытку. – Surya

+0

Не повезло. Я не вижу этого – Volatil3

+0

Вы убедились, что условие проходит через 'else', где вы устанавливаете' flash [: notice] = 'Не удалось войти в систему', когда вы пытались? Кроме того, вы можете просто сделать: «redirect_to»/user/login », обратите внимание:« Не удалось войти »вместо записи в две строки. – Surya

ответ

2

Добавьте это в файл шаблона:

<% flash.each do |key, value| %> 
    <div class="alert alert-<%= key %>"><%= value %></div> 
<% end %> 

Так что, когда ваш запустить свой код ключ в следующий раз будет заменить «уведомления "и значение с" невозможно войти в систему "

Надеюсь, что эта помощь! Thanks

+0

если проблема решена, то PLZ принять это как ответ –

0

Это было потому, что я получал ошибку Can't verify CSRF token authenticity. Я добавил следующее поле ввода в форме и начал показывать сообщение:

<input name="authenticity_token" type="hidden" value="<%= form_authenticity_token %>" /> 
Смежные вопросы