我想保存我的圖片,並且所有邏輯都在我的模型中。但我的模型總是返回Trying to get a property of non object on line 80.
Laravel靜態模型試圖獲取非對象的屬性
這裏是我的代碼:
在UserController.php:
DB::beginTransaction();
try{
$user = new User($request->all());
if($user->save()){
User::savePicture($user->id, $request->cover);
}
DB::commit();
} catch(\Exception $e){
DB::rollback();
}
在user.php的(模型):
protected $picBaseDir = 'images/users/pic/';
public static function savePicture($id, UploadedFile $file)
{
$user = static::find($id);
$path = env('DIRECTORY') . $user->picBaseDir;
makePath($path);
// all other logic to move the image, etc
}
80號線在$path = env('DIRECTORY') . $user->picBaseDir;
我試過在我的模型中記錄id,它ret正確地甕。但是當我嘗試在內部模型中登錄$user
時,它將返回空。
任何解決方案?
由於
找到了解決辦法。罪魁禍首是我的全球範圍內的用戶。它只檢查狀態是否。當用戶保存時,狀態仍爲0.
謝謝。
你有沒有嘗試之前'$ PATH = ENV( '目錄'),以DD'$ user'。 $ user-> picBaseDir;'這一行? – 2016-07-31 11:20:18
我已經試過了。它返回我null。 – ssuhat