控制器未调用Rails中的View,是Sample

时间:2012-08-13 01:53:34

标签: ruby-on-rails ruby-on-rails-3 login ruby-on-rails-3.2

1 - 我的控制器就是这个,但这不是调用视图,因为这个名字是login.html.erb,我不明白因为这个发生了什么,就是显示登录的形式。

class FinancesController < ApplicationController
  # GET /finances
  # GET /finances.json
  def login
    @user = User.find_by_name(params[:user])
    if @user
      session[:user_id] = @user.id
      redirect_to :action => 'index'
    else
      redirect_to login_url
    end

  end

  def index
    @finances = Finance.all(:order => "created_at")

    respond_to do |format|
      format.html # index.html.erb
      format.json { render json: @finances }
    end
  end

2 - 有人可以跟我说使用authenticate方法验证一个示例登录白名单用户和密码表格,可以告诉我如何使用这个方法,find_by_name_and_password不起作用。

我感谢答案,很多。

的routes.rb

Controle::Application.routes.draw do
  match 'login' => 'finances#login' 
  resources :finances
end

1 个答案:

答案 0 :(得分:1)

检查@user对象。

因为,如果login不可用,您的代码将重定向到@user方法。

要从login.html.erb方法渲染login,不需要任何手动重定向。