Ich führe nun Omniumuth-Funktion in meine App ein. Alles funktioniert gut, außer dass ich den Vor- und Nachnamen von Facebook nicht bekommen kann. Hier ist mein Modellcode.
%Vor%Ich habe bereits die starken Parameter richtig für die Einrichtung eingerichtet, als benutze das jetzt für die Standardauthentifizierung und funktioniert ordnungsgemäß. Gibt es zusätzliche Berechtigungen für den Vor- und Nachnamen von Facebook?
Nach einigem Herumspielen fand ich die Lösung. Jetzt denke ich, wir müssen explizit die Felder verlangen, die wir benötigen. Für mich besteht die Lösung darin, first_name
und last_name
zu facebook
hinzuzufügen.
In meinem initializers
habe ich first_name
und last_name
zu info fields
hinzugefügt.
Aktualisieren
Meine vollständige Konfigurationsdatei wird jetzt so aussehen
%Vor% Aus dem Facebook-Dokument , dem first_name
und last_name
Felder sind beide Teil des öffentlichen Profils, also sollten Ihre Berechtigungen in Ordnung sein.
Keine Ahnung, ob das funktionieren würde (in der Tat würde ich hoffen, dass es nicht funktioniert), aber in der Implementierung arbeiten wir in der Produktion, in dem Moment, wo wir Hash-Zugriffsmethoden anstelle von Methoden verwenden. Also:
%Vor% Wenn Ihre email
etc Felder richtig gesetzt werden, wäre ich überrascht, wenn das funktioniert, aber es könnte sich lohnen.
Ist das nicht der Fall, haben Sie Validierungen oder before_create
Callbacks, die irgendwie stören könnten?
Tags und Links ruby-on-rails facebook devise omniauth omniauth-facebook