Laravel 4属于BelongsTo的热切负载约束

黄金人生

我有两个模型……飞机和机芯:

在飞机上:

public function movements() {
    return $this->hasMany('Movement');
}

运动中:

public function aircraft() {
    return $this->belongsTo('Aircraft');
}

表移动:

Schema::create('movements', function($table)
    {
        $table->increments('id');
        $table->boolean('flag_visible')->default(1);
        $table->integer('aircraft_id')->nullable()->default(NULL);
        $table->timestamps();
    });

桌上飞机:

Schema::create('aircrafts', function($table)
    {
        $table->increments('id');
        $table->string('identifier');
        $table->timestamps();
    });

现在,我要选择标识符为10的飞机的所有动作:

$movements = Movement::with(array(
            'aircraft' => function($query) {
                $query->where('identifier', 'like', '%10%');
            }
        ));

我只有一个aircraft_id的移动记录,其中标识符为%10%。但是我得到了所有的动向记录,只有标识符正确的那个才具有“飞机”的关系。但是我只需要一个具有一个记录的数组,而只有一个具有正确标识符的数组..这是什么问题?

林地迷航

with()创建一个单独的查询以一次检索所有相关值(紧急加载),而不是根据需要(延迟加载)。

您正在寻找对运动查询添加约束,因此您应该使用whereHas(),如下所示:

$movements = Movement::whereHas('aircraft', function($q)
{
    $q->where('identifier', 'like', '%10%');

})->get();

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用多个约束进行 Laravel 热切加载?

来自分类Dev

Laravel对急切负载的简单约束

来自分类Dev

Laravel急切的负载约束问题

来自分类Dev

具有动态约束的Laravel急切负载

来自分类Dev

带有参数的热切加载-Laravel

来自分类Dev

BaseModel的热切负载

来自分类Dev

Laravel 4雄辩的约束

来自分类Dev

在 Laravel 中使用分页进行多次热切加载

来自分类Dev

Laravel 4渴望加载约束

来自分类Dev

无法在Laravel中使用急切负载

来自分类Dev

Laravel 急切加载 BelongsTo 关系不起作用

来自分类Dev

为什么Laravel / Eloquent无法使用JOIN进行热切加载?

来自分类Dev

Laravel - 在关系热切加载中集成大型原始查询

来自分类Dev

Laravel雄辩的“ belongsTo” /“ hasOne”

来自分类Dev

Laravel 中的 BelongsTo 关系

来自分类Dev

Laravel 4-外键约束失败

来自分类Dev

Laravel属于要查询

来自分类Dev

Laravel属于不工作

来自分类Dev

Laravel属于多个

来自分类Dev

Laravel雄辩的“属于” /“ hasOne”

来自分类Dev

Laravel属于关系

来自分类Dev

Laravel Group by属于

来自分类Dev

Laravel 属于返回无

来自分类Dev

用负载计数Laravel

来自分类Dev

Laravel - 多对多关系限制急切负载

来自分类Dev

Laravel - 限制急切负载 - 排除过滤的父母

来自分类Dev

在《 Laravel Nova》中BelongsTo的翻译

来自分类Dev

Laravel Eloquent属于不工作

来自分类Dev

Laravel属于ToMany Relationship问题