Можете ли вы использовать form_for с формой входа в волшебство вместо form_tag
Я пытаюсь решить эту проблему:
Волшебство и Простая Форма реализации
Кажется, что все, что мне нужно сделать, это иметь возможность использовать form_for с формой входа в систему волшебства вместо form_tag
, Это позволило бы мне иметь возможность использовать simple_form_for
,
Как ты это делаешь?
1 ответ
Решение
Я делаю это с помощью переменной @user:
Мой сессионный контроллер:
class UserSessionsController < ApplicationController
skip_before_filter :require_login, :except => [:destroy]
def new
@user = User.new
end
def create
if @user = login(params[:user][:username],params[:user][:password],false)
redirect_back_or_to(root_path, :notice => 'Login successfull.')
else
@user = User.new
flash.now[:error] = "Login failed."; render :action => "new"
end
end
def destroy
logout
redirect_to(root_path, :notice => 'Logged out!')
end
end
Мой сеанс просмотра:
<%= simple_form_for @user, :html => {:class => 'form-signin'} , :url => {:controller => 'user_sessions', :action => 'create'} do |f| %>
<%= f.input :username %>
<%= f.password_field :password %>
<%= f.button :submit, 'Login' %>
<% end %>