Ich verwende Rails 3 und Devise, um eine App zu erstellen, durch die Nutzer auf die Website gelangen und eine Startseite mit einem Login und einem Anmeldeformular angezeigt wird. Diese Seite hat einen eigenen Controller ("homepage"), also ist die Route
%Vor%Ich möchte eine andere Startseite anzeigen, wenn die Benutzer bereits angemeldet sind. Dies würde dem Wurzelpunkt auf
entsprechen %Vor%Gibt es eine Möglichkeit, in routes.rb eine bedingte Route einzurichten, mit der ich überprüfen kann, ob der Benutzer authentifiziert wurde, bevor er sie an eine dieser Homepages weiterleitet?
Ich habe versucht, den folgenden Code zu verwenden, aber wenn ich nicht eingeloggt bin, fordert Devise mich auf, sich einzuloggen, also funktioniert nur die erste Route.
%Vor%Ich möchte auch, dass die URL in beiden Fällen auf www.example.com zeigt, sodass www.example.com/dashboard/index und www.example.com/homepage/index niemals im Browser angezeigt werden. p>
Tausend Dank !!!
Probieren Sie das aus, es ist jedoch spezifisch für Warden / Devise.
%Vor%Hier ist die richtige Antwort mit Rails 4
%Vor%Ich habe versucht, dies zu der akzeptierten Antwort hinzuzufügen / zu bearbeiten, aber es ist zu viel von einer Bearbeitung, um anscheinend akzeptiert zu werden. Wie auch immer, Abstimmung für die angenommene Antwort (von Bradley), es half mir, mit diesem zu kommen:)
Tags und Links ruby-on-rails devise rails-routing