duanfen1992 2017-08-02 18:39
浏览 12
已采纳

不适用于我的UsersUpdate的laravel策略

I have

(1/1) HttpException
This action is unauthorized.

I think all should work fine and I have done it right but maybe not.

My controller method:

public function update(Request $request, Users $uzytkownik)
{
    $this->authorize('update', $uzytkownik);
    return 1;
}

UsersPolicy that is in App\Policies\:

<?php

namespace App\Policies;

use App\Models\Users;
use Illuminate\Auth\Access\HandlesAuthorization;

class UsersPolicy
{
    use HandlesAuthorization;

    public function update(Users $user)
    {
        return true;
//        return $user->login === auth()->login;
    }

}

And in AuthServiceProvider:

protected $policies = [
        'App\Model' => 'App\Policies\ModelPolicy',
        'App\Models\Users' => 'App\Policies\UsersPolicy',
    ];

My Users model lays in App\Models\

When I cut $this->authorize('update', $uzytkownik); this line from controller everything works fine and I see '1', when I add it again HttpException.

What do I have wrong here? Thinking and Thinking, looking, I don't see anything bad here.

  • 写回答

2条回答 默认 最新

  • doudou6050 2017-08-02 18:54
    关注

    please make sure that your route is under auth middlware like this :

    Route::group(['middleware' => 'auth'], function () {
       // ur update route here
    });
    

    or in ur controller constructor like this :

    public function __construct()
    {
        $this->middleware('auth');
    }
    

    and also like @Laerte said your update policy method should have another parameter of type user which is the user you want to edit, like this :

     public function update(Users $userLoggedIn, Users $uzytkownik)
     {
         return true;
     }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘