2016-05-19 40 views
0

我試圖激活阻止用戶的用戶帳戶,但我被卡在代碼中的某處。 這裏是我的控制器操作:如何激活laravel 5.2中的用戶帳戶

public function activateAccount() 
{ 
    $id = Auth::user(); 
    $update = User::find($id); 
    $update->update(['isActive' => 'Y']); 
    $update->save(); 
    $responce = array('status' => true); 

    echo json_encode($responce); 
    return redirect()->back()->with('message','Your Account Activated Successfully!'); 
} 

和我的路線是

Route::get('activate/account',['uses' => '[email protected]']); 

我收到此錯誤從我的控制器:對空

調用成員函數的update()

任何人都可以請告訴我爲什麼這個問題aring,這是做這件事的正確方法嗎?如何激活被阻止用戶的用戶?任何幫助將不勝感激。

回答

1

沒有什麼像laravel中的update()。

刪除更新並像這樣做。

public function activateAccount() 
{ 
    $id = Auth::user(); 
    $update = User::find($id); 
    $update->isActive = 'Y'; 
    $update->save(); 
    $responce = array('status' => true); 

    echo json_encode($responce); 
    return redirect()->back()->with('message','Your Account Activated Successfully!'); 
} 
+0

你應該把類型的isActive布爾只有0/1 false/true。爲更好的錯誤處理使用:User :: findOrFail($ id); – di3

+0

我想你設置enum作爲isActive的數據類型。 –

+0

不只是布爾值,它是1的小整數或取決於您使用的數據庫。 $表 - >布爾型( 'isActive');在遷移 – di3