在非填充领域进行批量分配

我正在为一个只有两个字段的简单模型编写一些单元测试:question_id和title。

我在模型上设置了可填充数组,使其仅包含标题:

protected $fillable = array('title');

我还创建了以下单元测试:

    /**
     * @expectedException Illuminate\Database\Eloquent\MassAssignmentException
     */
    public function testAnswerQuestionIdCanNotBeMassAssigned()
    {
        $params = ['question_id' => 1, 'title' => 'something'];
        $answer = new Answer($params);
    }

但是,不会引发异常,从而导致测试失败。

我在这里想念什么吗?

任何建议表示赞赏。

谢谢。

塞西洛扎尔

您可以在模型的填充方法中看到原因

public function fill(array $attributes)
{
    $totallyGuarded = $this->totallyGuarded();

    foreach ($this->fillableFromArray($attributes) as $key => $value)
    {
        $key = $this->removeTableFromKey($key);

        // The developers may choose to place some attributes in the "fillable"
        // array, which means only those attributes may be set through mass
        // assignment to the model, and all others will just be ignored.
        if ($this->isFillable($key))
        {
            $this->setAttribute($key, $value);
        }
        elseif ($totallyGuarded)
        {
            throw new MassAssignmentException($key); <--- only if totally guarded
        }
    }

    return $this;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将[用户名]添加到可填充属性,以允许在[App / post]上进行批量分配

来自分类Dev

批量获取领域

来自分类Dev

批量获取领域

来自分类Dev

在laravel中的[App \ comment]上进行批量分配

来自分类Dev

使用批量启用的连接进行非批量操作的缺点是什么

来自分类Dev

Ruby对象批量分配

来自分类Dev

批量分配问题

来自分类Dev

批量收集到OPEN光标中进行选择...不填充集合

来自分类Dev

批量动态分配变量

来自分类Dev

批量分配后获取ID

来自分类Dev

将预先填充的数据变成资产的领域?

来自分类Dev

填充领域对象服务器

来自分类Dev

使用peewee进行批量处理的批量插入

来自分类Dev

在python中进行批量/批量DNS查找?

来自分类Dev

在大规模分配期间未填充Yii2非DB(或虚拟)属性吗?

来自分类Dev

在大规模分配期间未填充Yii2非DB(或虚拟)属性吗?

来自分类Dev

将[nama_vendor]添加到fillable属性,以允许在laravel 6中的[App \ Vendor]上进行批量分配

来自分类Dev

批量使用非位置参数

来自分类Dev

异步进行批量复制

来自分类Dev

如何进行批量上传

来自分类Dev

在Cassandra中进行批量突变?

来自分类Dev

使用ExifTool进行批量操作

来自分类Dev

使用ffmpeg进行批量转换

来自分类Dev

使用shell脚本批量“填充”段落

来自分类Dev

从外部列表中批量填充VAR

来自分类Dev

使用 NetConnectionID 名称批量填充选择列表

来自分类Dev

领域:使用IN运算符进行过滤

来自分类Dev

对领域列表进行排序并保留结果

来自分类Dev

如何在Android中进行领域设置