【发布时间】:2019-11-05 19:39:39
【问题描述】:
文档是隐藏了什么,还是隐藏了什么?
创建于
php artisan make:policy AdvertisementPolicy --model=Advertisement
class AdvertisementPolicy
{
use HandlesAuthorization;
/**
* Determine whether the user can view any advertisements.
*
* @param \App\User $user
* @return mixed
*/
public function viewAny(User $user)
{
return false;
}
public function view(User $user, Advertisement $advertisement)
{
return false;
}
模型也是用 cli 创建的
namespace App;
class Advertisement extends Model
{
通过以下方式注册:
use App\Advertisement;
use App\Policies\AdvertisementPolicy;
class AuthServiceProvider extends ServiceProvider
{
protected $policies = [
Advertisement::class => AdvertisementPolicy::class,
这里是否有任何其他步骤可以使用 laravel 6 完成此策略注册?
【问题讨论】:
-
您在哪里进行未使用策略的授权检查?
-
目前此控制器无处可去,但用户已登录,我将在控制器中包含或稍后路由身份验证中间件,但我认为这不是策略的问题,因为没有调用策略(在最少)
-
如果您没有在某处进行授权检查(特别是使用该模型),则永远不会使用该策略,所以不确定您的问题是什么......所以显示您在哪里做对某些操作的实际“授权”检查