Ошибка 403 при доступе к индексу в PostController с помощью PostPolicy - PullRequest
0 голосов
/ 29 марта 2020

У меня проблемы с доступом к странице индекса в laravel 6. У меня есть PostController с PostPolicy и промежуточным программным обеспечением авторизации. Контроллер выглядит так

class PostController extends Controller
{
  public function __construct(){
    $this->middleware('auth',['except'=>array('index','show')]);
    $this->authorizeResource(Post::class);
  }
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index()
    {
        $posts = Post::paginate('10');
        return view('posts.index',compact('posts'));
    }

Поскольку PostPolicy не имеет метода индексации, PostPolicy ограничивает доступ к индексу в PostController.

    <?php

namespace App\Policies;

use App\User;
use App\Post;
use Auth;
use Illuminate\Auth\Access\HandlesAuthorization;

class PostPolicy
{
    use HandlesAuthorization;

    /**
     * Determine whether the user can create and store the post.
     *
     * @param  \App\User  $user
     * @param  \App\Post  $post
     * @return mixed
     */
    public function create(User $user)
    {
      if (Auth::check()==true ) {
        return true;
      }
    }

    /**
     * Determine whether the user can view the post.
     *
     * @param  \App\User  $user
     * @param  \App\Post  $post
     * @return mixed
     */
    public function view(?User $user, Post $post)
    {
        return true;
    }

Я получаю ошибку 403 при доступе к странице индекса сообщений.

enter image description here

Ссылка Github для хранилища https://github.com/santosraj38/laravel-blog-example-with-vue Любая помощь будет оценена. Заранее спасибо

...