我有问题与Voyager交朋友Spatie medialibrary . 将Bread添加到此表时,会有一个名为Model Name的字段 . 如果我用实现HasMedia的模型填充它,面包已成功创建 . 但是当浏览'media'表时 - 这个表是空的 . 如果我用任何anothor值填充字段模型名称,则存在错误 - 此类不存在 .

表确实有字段,我可以用php-my-admin看到它

Update: 我已添加到我的模型代码中,如文档https://docs.spatie.be/laravel-medialibrary/v7/basic-usage/preparing-your-model中所述

namespace App;

use Illuminate\Database\Eloquent\Model;
use Spatie\MediaLibrary\HasMedia\HasMediaTrait;
use Spatie\MediaLibrary\HasMedia\Interfaces\HasMedia;

class Game extends Model implements HasMedia
{
    use HasMediaTrait;

    ...
}

调整我的模型控制器,所以我可以添加图像

public function store(Request $request)
{
    $newGame = new Game;

    $newGame->name = $request->game_name;
    $newGame->addMediaFromRequest('game_shortcut')->toMediaCollection('shortcut'); // изображение   
    $newGame->save();

    ...
}

现在我已经在我的文件系统中上传了图像文件,并在与Game对象相关的spatie 'media'表中输入了图像 . http://joxi.ru/Vrwn5pbCKyWJgA

问题是我无法在Voyager中查看“媒体”表,因为我无法正确创建BREAD

Update: 如果在不填充模型字段的情况下创建BREAD,则失败

Symfony \ Component \ HttpKernel \ Exception \ AccessDeniedHttpException
This action is unauthorized

浏览表时出错