2016-03-22 6 views
0

Als ich das Geschlecht info sozialen Netzwerk bilden, wenn Benutzer registrieren, die ich bemerkt habe, dass die Geschlechterzuordnung wird in der nativen Laravel Persönlichkeit des öffentlichen Lebens-Anbieter, für ex fehlt bin an bekommen:Wie übergehe ich den nativen Socialite-Anbieter?

GoogleProvider.php

protected function mapUserToObject(array $user) 
    { 
     return (new User)->setRaw($user)->map([ 
      'id' => $user['id'], 'nickname' => array_get($user, 'nickname'), 'name' => $user['displayName'], 
      'email' => $user['emails'][0]['value'], 'avatar' => array_get($user, 'image')['url'], 
     ]); 
    } 

Also, ich kann nicht nur die obige Methode bearbeiten und das Geschlecht Feld zuordnen, weil GoogleProvider.php im Herstellerordner befindet.

Die Frage ist, wie würde ich mapUserToObject in verschiedenen sozialen Anbietern von Laravel überschreiben?

Oder, was ist der empfohlene Ansatz in einem solchen Fall?

Antwort

1

Bereitstellung von Google einen Gender-Bereich geht sollten Sie in der Lage sein, darauf zuzugreifen wie ...

$user = Socialite::driver('google')->user(); 
echo $user['gender']; 
Verwandte Themen