首页 > 解决方案 > 不得在 laravel 中定义 $fillable(如在类 Illuminate\Database\Eloquent\Model 中)

问题描述

我有以下 laravel 模型。当我尝试访问该站点时,它显示以下错误。

Symfony\Component\ErrorHandler\Error\FatalError 不能定义 App\Models\Setting::$fillable 的类型(如 Illuminate\Database\Eloquent\Model 类)

环境信息

Laravel 版本:8.60.0

PHP版本:7.4.16

<?php
        namespace App\Models;
        
        use Illuminate\Database\Eloquent\Factories\HasFactory;
        use Illuminate\Database\Eloquent\Model;
        
        class Setting extends Model
        {
            use HasFactory;
        
            protected array $fillable = [
                'key',
                'value',
            ];
        
            protected $casts = [
                'value' => 'array',
            ];
        }

标签: phplaravelmodel

解决方案


错误消息告诉您...“不得定义 App\Models\Setting::$fillable 的类型”。所以改变:

protected array $fillable = [
                'key',
                'value',
            ];

protected $fillable = [
                'key',
                'value',
            ];

其类型未定义的地方。

批量分配


推荐阅读