Pri odosielaní formulára na pridanie používateľa dostávam nasledujúcu chybu "trying to get a property of a non-object", chyba je zrejme na prvom riadku: Auth::user()->id of the following:
$id = Auth::user()->id;
$currentuser = User::find($id);
$usergroup = $currentuser->user_group;
$group = Sentry::getGroupProvider()->findById($usergroup);
$generatedPassword = $this->_generatePassword(8,8);
$user = Sentry::register(array('email' => $input['email'], 'password' => $generatedPassword, 'user_group' => $usergroup));
$user->addGroup($group);
Nejaké nápady? Chvíľu som hľadal a všetko, čo som videl, hovorí, že by to malo fungovať dobre. Môj používateľ je prihlásený pomocou autentifikačného balíka Sentry 2.
Predtým vykonajte Auth::check(), aby ste sa uistili, že ste dobre prihlásení:
if (Auth::check())
{
// The user is logged in...
}
id je protected
, stačí pridať verejnú metódu do vášho /models/User.php
public function getId()
{
return $this->id;
}
aby ste ju mohli zavolať
$id = Auth::user()->getId();
nezabudnite vždy otestovať, či je používateľ prihlásený...
if (Auth::check())
{
$id = Auth::user()->getId();
}