我想保存我的图片,并且所有逻辑都在我的模型中。但我的模型总是返回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