Ich habe gerade Devise eingerichtet und die Dinge funktionieren ordnungsgemäß. Aus irgendeinem Grund arbeitet meine Seite bei der Authentifizierung nicht zusammen.Wie verknüpfen Sie eine authentifizierte Seite mit Devise in Ruby?
Hier ist meine routes.rb-Datei.
devise_for :users #, path_names: { sign_out: 'sign_out' }
devise_scope :user do
authenticated :user do
root 'home#index'#, as: :authenticated_root
end
unauthenticated do
root 'devise/sessions#new', as: :unauthenticated_root
end
end
get "/dashboard" => "home#index"
Als ich in localhost:3000
geben, es leitet mich auf die devise Anmeldeseite, die auf localhost:3000/users/sign_in
existiert.
Wenn ich localhost:3000/dashboard
eintippe, bringt es mich wie beabsichtigt zur Anmeldeseite, aber wenn ich meine Anmeldeinformationen eintrage, bringt es mich immer wieder zur selben Anmeldeseite zurück.
Hier ist meine Datei application_controller.rb.
protect_from_forgery with: :exception
before_filter :authenticate_user!
Meine Absicht ist es localhost:3000
umleiten mir zu einer authentifizierten Version von localhost:3000/dashboard
zu haben, wo ich alles auf dieser Seite sehen. Nicht sicher, was passiert.
so etwas wie dieses Versuchen in der Anwendung Controller 'def after_sign_in_path_for (resource) user_path (current_user) end' –
So einfach habe ich' def after_sign_in_path_for (Ressource) Dashboard_path Ende für beide Anwendung und Home-Controller (wo das Dashboard lebt), aber nichts passiert. Irgendwelche Ideen? So ziemlich, die Anmeldung läuft immer noch in einer kreisförmigen Schleife der Anmeldung. – thetli8
Okay, also ich denke, ich verstehe das Problem, aber habe keine Ahnung, wie zu beheben. Meine Abmelde-Schaltfläche wird auch nicht umgeleitet. Ich füge def 'after_sign_in_path_for (Ressource) dashboard_path end' und ' def after_sign_out_path_for (Ressource) root_path end' meiner Application und nichts passiert. – thetli8