gpt4 book ai didi

laravel-5.1 - Eloquent 集合的 Laravel 授权

转载 作者:行者123 更新时间:2023-12-04 15:56:09 24 4
gpt4 key购买 nike

如何将 laravel Gate ( http://laravel.com/docs/5.1/authorization ) 应用于 Eloquent 集合。

它适用于如下单个项目

$post = Post::findOrFail($id);

if ($user->cannot('view-post', $post)) {
abort(403);
}

但不适用于收藏。是否可以使用 Gate 过滤集合并返回一个集合?
$posts = Post::all();

最佳答案

我也有同样的问题。也许有些像这样:

$post->filter(function($value,$key){
if(\Gate::allows('view-post',$value)){
return $val;
}
});

但必须有更好的解决方案。

相关链接:
https://laravel.com/docs/5.2/collections#method-filter
https://laravel.com/docs/5.2/authorization

关于laravel-5.1 - Eloquent 集合的 Laravel 授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32849859/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com