Ruby on rails会话不起作用

时间:2014-11-16 17:57:05

标签: ruby-on-rails ruby session

我在rails中使用会话哈希,只有一次登录操作完成并且呈现另一个页面时,它才能正常工作。如果我移动到另一个页面名称消失,则该用户的名称将仅显示在该呈现页面中。出现用户名称的部分位于布局中。

这是我的会话控制器:

class SesionController < ApplicationController

  def new
    @admin = Admin.find_by({"usuario" => params[:usuario], "password" => params[:password]})
    if @admin then
      session[:usuario] = @admin.id
      session[:nombres] = @admin.nombres + " " + @admin.apellidos

      @usuario = session[:nombres]
      @titulo = 'Panel De Control'
      @panel_activo = 'active'
      render :'admin/panel'
    end
  end

  def destroy
  end

end

这是呈现的页面的控制器,不显示用户的名称:

class AdminController < ApplicationController
  def panel
    @usuario = session[:nombres]
    @titulo = 'Panel De Control'
    @panel_activo = 'active'
  end
end

希望你能帮助我。

..........

我像这样注释了CSRF保护线:

class ApplicationController < ActionController::Base
  # Prevent CSRF attacks by raising an exception.
  # For APIs, you may want to use :null_session instead.
  #protect_from_forgery
end

现在它有效......任何原因?

0 个答案:

没有答案