【问题标题】:How to get fillable variable as array in laravel 4.2如何在 laravel 4.2 中获取可填充变量作为数组
【发布时间】:2016-10-04 19:10:11
【问题描述】:

当我们创建任何模型类时,我们会创建受保护的可填充变量

我喜欢用这个

$model = new Demo;
$model->fillable // but now working
$model->fillable() // but now working.

其实我想遍历那个变量

但我不想创建任何额外的变量,也不想更改变量

类型从受保护到公开。

在此先感谢....

【问题讨论】:

  • 你想修改模型的可填充属性吗?

标签: php laravel model


【解决方案1】:

模型有一个getFillable() 方法,该方法将返回$fillable 属性的值。

$model = new Demo();
dd($model->getFillable());

【讨论】:

  • Laravel 模型是否有一个属性可以返回可填充或受保护属性中设置的任何最终值?
  • @DendiHandian Illuminate\Database\Eloquent\Concerns\GuardsAttributes没有具体的方法可以做到这一点,但是你可以做到$model->getFillable()->merge($model->getGuarded());
  • @CameronWilby 好方法,但如果其他人都想知道,上面的代码不适合使用 :smile 。我们不能将可填充与受保护合并,但有点像使用 array_diff()
  • @DendiHandian 你在找$model->only($model->getFillable())吗?
  • 并且没有内置方法,您可以在不制作无用的空对象的情况下获得它:) 仍然 - 在 2021 年......现在这只是愚蠢
猜你喜欢
  • 2018-09-03
  • 1970-01-01
  • 1970-01-01
  • 2015-12-17
  • 2022-01-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-13
相关资源
最近更新 更多