Ruby on rails 登录页面Rails 4.1的UrlGenerationError
我正在尝试创建一个登录页面。我跟在后面。但是,在尝试访问会话/登录页面时,我遇到了以下错误。我使用的是Rails 4.1。我在S.O.上查看了其他类似问题的答案,但我找不到任何相关的答案。这是我的错误:Ruby on rails 登录页面Rails 4.1的UrlGenerationError,ruby-on-rails,ruby,ruby-on-rails-4,erb,Ruby On Rails,Ruby,Ruby On Rails 4,Erb,我正在尝试创建一个登录页面。我跟在后面。但是,在尝试访问会话/登录页面时,我遇到了以下错误。我使用的是Rails 4.1。我在S.O.上查看了其他类似问题的答案,但我找不到任何相关的答案。这是我的错误: ActionController::UrlGenerationError in Sessions#login No route matches {:action=>"login_attempt", :controller=>"sessions"} 突出显示的行是: <
ActionController::UrlGenerationError in Sessions#login
No route matches {:action=>"login_attempt", :controller=>"sessions"}
突出显示的行是:
<%= form_tag(:action => 'login_attempt') do %>
结束
如有任何想法/帮助,将不胜感激。谢谢。答案似乎是:动作不再是正确的语法。不得不将其更改为:method看起来答案是:action不再是正确的语法。必须将其更改为:方法将您的路线从
登录
更改为登录尝试
,如果您已经定义了登录
操作,则添加另一个名为登录尝试
的路线,将您的路线从登录
更改为登录尝试
,如果您已经定义了login
操作,然后添加另一个名为login\u trunt
的路由。您可以按照我的建议执行吗?我不在工作电脑上,需要知道解决问题的操作和方法有什么不同,据我所知,我看到一条丢失的路由。解释它,但不确定它是如何向你的控制器发出“获取”请求的……你能按照我的建议做吗,我不在我的工作电脑上,需要知道解决问题的行动和方法有什么不同,据我所知,我看到了一条丢失的路线。解释它,但不确定它是如何向您的控制器发出“get”请求的……是的,这似乎也起到了作用(通过操作)。问题。真正做到这一点的正确方法。谢谢。是的,这似乎也很有效(通过行动)。问题。真正做到这一点的正确方法。非常感谢。
<% @page_title = "Foos-Tracker | Login" -%>
<div class= "Sign_Form">
<h1>Log in</h1>
<%= form_tag(:action => 'login_attempt') do %>
<p>Username or Email:</br> <%= text_field_tag(:username_or_email) %></p>
<p>Password:</br> <%= password_field_tag :login_password %></p>
<%= submit_tag("Log In") %>
<% end %>
</div>
class SessionsController < ApplicationController
before_filter :authenticate_user, :only => [:home, :profile, :setting]
before_filter :save_login_state, :only => [:login, :login_attempt]
def login
#Login Form
end
def login_attempt
authorized_user = User.authenticate(params[:username_or_email],params[:login_password])
if authorized_user
session[:user_id] = authorized_user.id
flash[:notice] = "Wow Welcome again, you logged in as #{authorized_user.username}"
redirect_to(:action => 'home')
else
flash[:notice] = "Invalid Username or Password"
flash[:color]= "invalid"
render "login"
end
end
end
Rails.application.routes.draw do
get 'sessions/login'
get 'sessions/home'
get 'sessions/profile'
get 'sessions/setting'
get 'welcome/index'
get 'users/new'
resources :users
root 'welcome#index'