【问题标题】:Eloquent creating empty record雄辩地创建空记录
【发布时间】:2023-02-04 15:40:07
【问题描述】:

我确定我做错了什么,但无法弄清楚它是什么。 在控制器中,我有一个执行的方法:

$estimate = Estimate::create(
  ['session_id' => 'test']
);

模型: 使用 HasFactory;

protected $fillable = ['width, height, direction_id, media_id, coating_id, shape_id, amount, qty, session_id'];

估计与我的数据库中的估计有关。 触发时会创建一个估计记录,但字段“session_id”为空。

session_id is a VARCHAR 191.

知道为什么会这样吗?

【问题讨论】:

  • 你也可以显示型号代码吗
  • session_idfillable中吗?
  • @SachinBahukhandi 添加
  • protected $fillable = ['width, height, ..., session_id'];应该带有 ' 字符:protected $fillable = ['width', 'height', ..., 'session_id'];
  • protected $fillable = ['width', 'height', 'direction_id', 'media_id', 'coating_id', 'shape_id', 'amount', 'qty, session_id'];问题是您已将所有字段视为字符串但其数组。因此需要将每一列作为字符串引用

标签: laravel


【解决方案1】:

你定义你的$fillable错了。它应该是一个字符串数组:

protected $fillable = [
    'width',
    'height',
    'direction_id',
    'media_id',
    'coating_id',
    'shape_id',
    'amount',
    'qty',
    'session_id',
];

【讨论】:

    【解决方案2】:

    尝试保护 $guarded = [];在模型中

    【讨论】:

      猜你喜欢
      • 2018-02-14
      • 1970-01-01
      • 2014-10-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多