ruby - Devise refresh the same login form after login -
i'm struggling devise programming or configuration error in app. thing is when login application redirects me same page , not home. if enter wrong mail or wrong password, no error message comes out.
this routes.rb:
smarket::application.routes.draw "home/index" resources :tipo_transaccions resources :producto_rematados resources :provincia_units resources :propiedadclases resources :compra_venta_normals resources :clase_units resources :prod_of_necs resources :compra_venta_especials resources :producto_necesitados resources :compra_remates resources :notificacions resources :comisions resources :remates resources :pujas resources :valors resources :usuarios resources :propiedads resources :regions resources :productos resources :estado_remates resources :ganancia_liquidas resources :est_prod_of_necs resources :estado_notificacions resources :producto_ofertados resources :comunas resources :condicions root :to => "home#index" devise_for :usuarios, :controllers => { registrations: 'registrations' }, :skip => [:sessions, :registrations] :usuario "entrar", to: "devise/sessions#new", :as => :new_usuario_session post "entrar", to: "devise/sessions#create", :as => :usuario_session delete "salir", to: "devise/sessions#destroy", :as => :destroy_usuario_session "registrarse", to: "devise/registrations#new", :as => :new_usuario_registration post "registrarse", to: "devise/registrations#create", :as => :usuario_registration end end usuario.rb:
class usuario < activerecord::base mount_uploader :avatar, fotouploader include activemodel::validations # include default devise modules. others available are: # :confirmable, :lockable, :timeoutable , :omniauthable devise :database_authenticatable, :registerable, :recoverable, :rememberable, :trackable, :validatable self.table_name = 'usuario' self.primary_key = 'usuario_id' validates :usuario_nombre_usuario, :presence => true validates :usuario_rut, :presence => true validates :usuario_rut, rut: true validates :usuario_nombre, :presence => true validates :usuario_apellidopat, :presence => true validates :usuario_apellidomat, :presence => true validates :email, :presence => true validates :usuario_calle, :presence => true validates :usuario_numero_calle, :presence => true validates :usuario_villa, :presence => true belongs_to :usuario belongs_to :comuna and app/views/devise/session/new.html.erb:
<div class="login"> <div class="wrap"> <div class="col_1_of_login span_1_of_login"> <h4 class="title">new customers</h4> <p>lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis @ vero eros et accumsan</p> <div class="button1"> <%= link_to "crear cuenta", new_usuario_registration_path, :style => 'background: #555; border:none; color: #fff; padding: 10px 20px; cursor: pointer; float: right; font-family: "exo 2", sans-serif; outline: none; font-size: 1em' %> </div> <div class="clear"></div> </div> <div class="col_1_of_login span_1_of_login"> <div class="login-title"> <h4 class="title">login</h4> <div id="loginbox" class="loginbox"> <%= form_for(resource, :as => resource_name, :url => session_path(resource_name), :html => { :role => 'form'}) |f| %> <div> <%= f.label :email %><br /> <%= f.email_field :email, autofocus: true, :style => 'width:70%' %> </div> <div> <%= f.label :contraseƱa %><br /> <%= f.password_field :usuario_contrasena, autocomplete: "off", :style => 'width:70%' %> </div> <% if devise_mapping.rememberable? -%> <div> <%= f.check_box :remember_me %> <%= f.label :remember_me, :style => 'float:left; outline: none; padding-right:10px; padding-top:3px; ' %> </div> <% end %> <div><%= f.submit "login", :style => 'background: #555; border:none; color: #fff; padding: 10px 20px; cursor: pointer; float: right; font-family: "exo 2", sans-serif; outline: none; font-size: 1em'%></div> <% end %><br> </div> </div> </div> <div class="clear"></div> </div> </div>
so redirecting other page after sign_in, need override devise method :
def after_sign_in_path_for resource home_path end for error messages need set follow :
<%= form_for(resource, :as => resource_name, :url => session_path(resource_name), :html => { :role => 'form'}) |f| %> <%= f.error_messages %> ........
Comments
Post a Comment