所以,我有以下代码:
$query = Good::query();
$query->with('availabilities_good.availability.truck');
$rows = $query->get();
我从数据库中抓取goods
以及通过availabilities
数据透视表与其关联的availabilities_good
。
现在,availability
模型具有truck
关系。
卡车型号包含以下列:id
,car_plate
和vin
。
有没有一种方法可以根据car_plate
的列值即时更改good
的值(同时急切加载)?
例如:如果good
的{{1}}列的值为status
,那么我想用active
替换car_plate
的字符,如下所示:隐藏它,否则,保持不变。
我知道我可以使用******
数组上的foreach
循环来执行此操作,但是我在问是否有一种方法可以在渴望加载时执行此操作。
谢谢。
答案 0 :(得分:-1)
一种选择是使用原始数据库查询,如下所示:
Good::select(DB::raw('IF(good.status = 1,"*****", truck.car_plate) as car_plate'))->get();