Wie Sie Zugang zu current_user-Objekt-Modell?
Ich bin versucht zu schreiben, eine Methode, die in meinem "team" - Modell, aber current_user zeigt dieser Fehler
Undefinierte lokale variable oder Methode `current_user' für #
def set_default_url
if current_user.id == self.user_id
"/assets/default_black_:style_logo.jpg"
else
"/assets/default_:style_logo.jpg"
end
end
Die Methode current_user ist in Ordnung, für andere Modelle und Steuerungen . Ich bin dem Aufruf dieser Methode wie diese .
has_attached_file :logo, :styles => {
:medium => "200x200#",
:thumb => "100x100#",
:small => "50x50#"
},
:default_url => :set_default_url
Ich bin mit rails 3.2 ruby 1.9.3 und entwickeln 3.1 . Es scheint einfache Aufgabe, aber ich verstehe nicht, wo der Fehler liegt . Ich bin wirklich dankbar, wenn jemand hilft mir hier .
Möchten Sie vielleicht einen Blick auf dieses stackoverflow.com/questions/1568218/...
Haben Sie jede Vereinigung von
Ja! natürlich
Haben Sie jede Vereinigung von
User
Modell mit Team
Modell?Ja! natürlich
InformationsquelleAutor techdreams | 2015-03-02
Du musst angemeldet sein, um einen Kommentar abzugeben.
current_user
ist nicht in jedem Modell, um den Zugriffcurrent_user
im Modell tun dieserIn Ihrer Anwendung controller
in Ihrem
Team
Modell fügen Sie diese ZeileHerzlichen Glückwunsch, jetzt
current_user
ist in jedem Modell, um den aktuellen Benutzer verwenden Sie einfach die folgende Zeile überallHINWEIS: Starten Sie den server nach dem hinzufügen der Linien, die oben erwähnt!
Jetzt in Ihrer Frage, Sie können es verwenden, wie
Hoffe, das hilft!
Oops, tut mir Leid, ich verpasste eine Zeile, in der Anwendungs-controller fügen Sie diese Zeile
before_filter :set_current_user
habe ich bearbeitet die AntwortVielen Dank es hat funktioniert.
InformationsquelleAutor Rajdeep Singh
Wenn Sie es nur einmal, als beim Aufruf dieser Methode übergeben current_user als argument wie
und im Modell
Wenn Sie nicht möchten, dass die oben genannten Schritte dann befolgen Sie diese
Gehen Sie zum Benutzer-Modell
Dann gehen Sie zu application controller
Nun können wir leicht Holen current_user in jedem Modell nicht nur im Team
nur eben als User.current_user, also in Ihrem code
Also verwenden Sie es.
Hoffe, es löst Ihr Problem in einem guten Weg. Kostenlos zu benutzen, die in jedem Modell
Benutzer.current_user zu Holen, den aktuellen Benutzer
Benutzer.current_user= zum zuweisen des aktuellen Benutzers.
Dank
InformationsquelleAutor Gourav