このRubyRailcastsのエピソードに従って、簡単な認証を実行uninitialized constant Sessions
していますが、ログインページに移動するとエラーが発生します。私は自分のクラスをチェックしましたが、名前は適切です。これはほとんどの人が報告している問題のようです。ここで何が起こっているのか考えてみませんか?
私のコントローラーファイルの名前はsessions_controller.rb
で、コードは次のとおりです。
class SessionsController < ApplicationController
def new
end
def create
user = User.authenticate(params[:email], params[:password])
if user
session[:user_id] = user.id
redirect_to root_url, :notice => 'Logged In!'
else
flash.now.alert = 'Invalid email or password'
render 'new'
end
end
def destroy
session[:user_id] = nil
redirect_to root_url, :notice => 'Logged Out!'
end
end
ルート.rbファイル:
Albumtracker::Application.routes.draw do
get "login" => "sessions/new", :as => "login"
get "logout" => "sessions/destroy", :as => "logout"
get "signup" => "users/new", :as => "sign_up"
root :to => 'users#new'
resources :users
resources :sessions
get "pages/index"
end
セッション/新しいビューファイル:
<h1>Log in</h1>
<%= form_tag sessions_path do %>
<p>
<%= label_tag :email %><br />
<%= text_field_tag :email, params[:email] %>
</p>
<p>
<%= label_tag :password %><br />
<%= password_field_tag :password %>
</p>
<p class="button"><%= submit_tag "Log in" %></p>
<% end %>