来自Laravel文件:https://laravel.com/docs/9.x/filesystem#file-uploads
我可以使用以下任一方法从请求上载文件:
$path = $request->file('avatar')->store('avatars');
或
$path = Storage::putFile('avatars', $request->file('avatar'));
这些文档还提到了如何设置文件的权限:https://laravel.com/docs/9.x/filesystem#file-visibility
在config中为public
或private
设置权限,然后使用put()
方法。但是当我从请求中获取文件时,我需要使用putFile()
或store()
,而不是put()
,因此在这种情况下如何设置权限?
1条答案
按热度按时间mm9b1k5b1#
如果您不希望文件公开,请不要使用公共存储。
我不知道这是否是检查文件权限的最佳方法,但当我需要向特定用户给予文件访问权限时,我会这样做:
在这个例子中,文件的路径存储在AdmissionFile上的DB中。我使用Policies来检查查看文件的权限: