RAILS - Difficultées pour la connexion

Par Vialonyx - Kiliann, il y a 7 ans


Bonjour,

Voila je rencontre un petit problème avec mon code.

Ce que je fais

Je cherches à rendre possible la connexion de mes utilisateurs.
Je suis le tutoriel de Grafikart (https://www.youtube.com/watch?time_continue=116&v=Nc_AfbwmDrM)

L'inscription fonctionne, après l'inscription l'utilisateur est bien connecté (ID stocké en session).
Mais lorsque j'essaie de passer par le sign-in, je rencontre l'erreur suivante : No route matches [POST] "/sessions/new"
Voici le contenu de mes différents fichiers :

routes.rb

Rails.application.routes.draw do root 'pages#index' resources :users, only: [:new, :create] resources :sessions, only: [:new, :create, :destroy] get '/profile', to: 'users#edit', as: :profil patch '/profile', to: 'users#update' end

sessions_controller.rb

class SessionsController < ApplicationController skip_before_action :only_signed_in, only: [:new, :create] def new end def create user_params = params.require(:user) @user = User.where(username: user_params[:username]) .or(User.where(email: user_params[:username])).first if @user and @user.authenticate(user_params[:password]) session[:auth]['id'] = @user.id redirect_to profile_path else redirect_to new_user_path end end def destroy end end

application_controller.rb

class ApplicationController < ActionController::Base before_action :only_signed_in helper_method :current_user, :user_signed_in? private def only_signed_in if !user_signed_in? redirect_to new_user_path end end def current_user return nil if !session[:auth] || !session[:auth]['id'] return @_user if @_user @_user = User.find(session[:auth]['id']) end def user_signed_in? !current_user.nil? end end

Je n'arrives pas à comprendre d'où viens cette erreur ni à quoi elle est due.

Merci de votre aide,

Aucune réponse