Ruby on rails 行动';创建';找不到SessionController的
我是RubyonRails新手,目前正在尝试创建一个用户登录页面。为此,我使用了会话。每当我打开登录页面时,它都会加载,但是当我尝试输入我知道存在的用户的登录信息时,我会得到错误Ruby on rails 行动';创建';找不到SessionController的,ruby-on-rails,ruby,session,ruby-on-rails-4,Ruby On Rails,Ruby,Session,Ruby On Rails 4,我是RubyonRails新手,目前正在尝试创建一个用户登录页面。为此,我使用了会话。每当我打开登录页面时,它都会加载,但是当我尝试输入我知道存在的用户的登录信息时,我会得到错误 Unknown action The action 'create' could not be found for SessionsController 我的路由文件如下所示。另外,我在这里使用教师作为用户类 MyApp::Application.routes.draw do root :to => 'h
Unknown action
The action 'create' could not be found for SessionsController
我的路由文件如下所示。另外,我在这里使用教师作为用户类
MyApp::Application.routes.draw do
root :to => 'home#index'
get 'teachers' => 'teachers#all'
get 'profile' => 'teachers#show'
get 'signup' => 'teachers#new'
get 'login' => 'sessions#new'
post 'login' => 'sessions#create'
delete 'logout' => 'sessions#destroy'
resources :teachers
end
和会话控制器
class SessionsController < ApplicationController
module SessionsHelper
def new
@session=Session.new
end
def log_in(teacher)
session[:teacher_id] = teacher.id
end
def create
teacher = Teacher.authenticate(params[:session][:email],
params[:session][:password])
if teacher.nil?
flash.now[:error] = "Invalid email/password combination."
@title = "Sign in"
render 'new'
else
sign_in teacher
redirect_to teacher
end
end
def remember(teacher)
teacher.remember
cookies.permanent.signed[:teacher_id] = teacher.id
cookies.permanent[:remember_token] = teacher.remember_token
end
def current_teacher
if (teacher_id = session[:teacher_id])
@current_teacher ||= Teacher.find_by(id: teacher_id)
elsif (teacher_id = cookies.signed[:teacher_id])
teacher = Teacher.find_by(id: teacher_id)
if teacher && teacher.authenticated?(cookies[:remember_token])
log_in teacher
@current_teacher = teacher
end
end
end
def logged_in?
!current_teacher.nil?
end
def log_out
session.delete(:teacher_id)
@current_teacher = nil
end
def destroy
log_out if logged_in?
redirect_to root_url
end
end
end
class sessioncontroller
有什么办法可以解决这个问题吗?为什么使用
模块sessionHelper
?我觉得自己很笨,但是我把它放在了helper类中,我想在这里删除它。我完全忽略了它。我把它拿出来,它解决了问题。非常感谢你帮我整理的