[PHP][Laravel]“Illuminate\Database\Eloquent\MassAssignmentException: Add ** to fillable **“入库报错问题解决

解决Laravel表单入库报错

Illuminate\Database\Eloquent\MassAssignmentException: Add [name] to fillable property to allow mass
assignment on [App\api\User]. in file
C:\xampp\htdocs\laravel\vendor\laravel\framework\src\Illuminate\Database\Eloquent\Model.php on line 331

在这里插入图片描述

  • 这是因为准备入库的信息字段名不属于内部被允许入库的字段名

  • 请在模型类中添加 允许入库字段

<?php

namespace App\api;

use Illuminate\Database\Eloquent\Model;

class User extends Model
{
	// 下面是设置数据表名,如果不设置,则使用类名的复数形式作为表名,如Users
	protected $table = "student";
	// `$primaryKey`属性(可选),值是主键名称,在主键不是id的时候则需要指定主键
	protected $primaryKey = "uid";
    // 下面即是允许入库的字段,数组形式,name age sex三个字段允许入库
    protected $fillable = ['name','age','sex'];
    // 定义`$timestamps`属性,不设置为`false`,默认操作表中的`create_at`和`updated_at`字段,我们表中一般没有这个字段,所以设置为`false`,表示不要操作这两个字段
    public $timestamps = false;
    // 下面用于设置不允许入库字段,一般和$fillable存在一个即可
    protected $guarded = [];
}

在这里插入图片描述

  • 添加好允许入库的字段,即可解决问题
  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值