Я пытаюсь использовать authlogic, но, видимо, я делаю что-то не так.После успешного создания пользователей (проверено с помощью User.all в консоли), я бы попытался войти в систему, но потерпел неудачу.Что я делаю не так?
Кроме того, RubyMine пометил UserSession.new (params [: user_session]) как ошибочный, поскольку у UserSession.new нет параметров. Это просто проблема с RubyMine?
Воткод моей модели
class User < ActiveRecord::Base
acts_as_authentic do |config|
config.login_field = :email
end
validate :cannot_exceed_100_users
protected
def cannot_exceed_100_users
if User.count > 100
errors.add_to_base('Cannot have more than 100 users.')
end
end
end
class UserSession < Authlogic::Session::Base
def to_key
[session_key]
end
end
Вот мой код контроллера
class UserSessionsController < ApplicationController
def new
@user_session = UserSession.new
end
def create
@user_session = UserSession.new(params[:user_session])
if @user_session.save
logger.info 'success'
redirect_to games_path
else
logger.info 'failed'
render :action=>'new'
end
end
def destroy
current_user_session.destroy
redirect_to new_user_session_path
end
end
Вот мой код страницы входа в систему
<div>
<%= form_tag :action=>'create' do %>
<p>Please Log In</p>
<div>
<label for="email">Email:</label>
<%= text_field_tag :email, params[:email] %>
</div>
<div>
<label for="password">Password</label>
<%= password_field_tag :password, params[:password] %>
</div>
<div>
<%= submit_tag "Login" %>
</div>
<% end %>
<%= link_to 'register', new_user_path %>
</div>