我正在尝试查看存储文件夹中是否存在文件。即使文件存在,它也会在服务器中返回false。在我的本地环境中,它工作得很好。
我正在尝试为用户存储头像。当我检查头像是否存在时,它返回false。
存储头像:
$avatar = $request->file('avatar');
$user = Auth::user();
if($avatar && $file = $avatar->isValid()) {
$file = $request->file('avatar');
$path = $user->avatar_path;
$image = Image::make($file)->fit(100,100)->encode('jpg');
Storage::put($path, $image);
$url = Storage::url($path);
}检查化身是否存在
$user = Auth::user();
if ($user->has_avatar) {
Storage::delete($user->avatar_path);
}在user.php模型中具有头像方法
public function getHasAvatarAttribute()
{
return Storage::disk('public')->has('avatars/'.md5($this->id . $this->email).'.jpg');
}化身路径函数
public function getAvatarPathAttribute()
{
return 'public/avatars/'. md5($this->id . $this->email) . '.jpg';
}当我在我的机器上测试时,一切都很好。在服务器上,即使头像存在,它也会返回false。
发布于 2019-08-14 16:54:31
我还不能评论,所以我将在这里留下这个答案。在生产中它不工作吗?就像在实时服务器中一样?也许是linux服务器?你是在Windows上运行本地开发吗?明白我要做什么了吗?你的道路可能是错的。我指的是命名。甚至a到A或反之亦然,都可能影响路径。您的文件命名也是如此。和路径命名。avatar/something和/avatar/something是完全不同的。
如果是这样的话,请告诉我。
https://stackoverflow.com/questions/57491184
复制相似问题