2012-03-31 11 views
0

Ich habe 2 devise Benutzer, Admin und Benutzer, die sagen können, bearbeiten eine Seite.Teilen Ansichten zwischen 2 devise Modelle

Für Admin, haben wir eine edit_admin_page Route Für Benutzer haben wir eine edit_user_page Strecke

Den einzigen Unterschied zwischen den zwei Ansichten wird die Edit-Seite URL sein.

Ich möchte nur 1 Ansicht für beide Benutzer schreiben, für die sich die Bearbeitungsseiten-URL basierend auf dem Benutzer devise ändert.

+0

Erstellen, Rendering eine teilweise würde ich denke. – uday

+1

wenn user_signed_in? rendern 'user_button' elsif admin_signed_in? render 'admin_button' Ist das was du meinst? – Rahul

Antwort

0

Vorerst habe ich folgende,

Nachdem ich meine devise Objekt authentifiziere (admin/user), habe ich @current_devise_scope entweder als 'admin' oder 'user' und dann in gemeinsamer Ansicht, fügte ich

send("edit_#{@current_devise_scope}s_path_path", @page.id) 

Dies funktioniert jetzt für alle freigegebenen Ansichten.

Ich konnte keinen Weg finden, auf current_devise_scope von devise zuzugreifen, wenn es welche gibt.

Verwandte Themen