【发布时间】:2021-09-19 17:35:12
【问题描述】:
如果 AddonGroup 没有“productAddon”,我会尝试阻止“插件”返回。
有什么办法可以实现吗?
当前代码:
$addonGroups = AddonGroup::whereIn("id", $addonGroups)
->whereHas(['addons.productAddon' => function ($query) use ($customise) {
$query->where('product_reference', $customise->package_reference);
}])
->with('addons')
->with(['addons.productAddon' => function ($query) use ($customise) {
$query->where('product_reference', $customise->package_reference);
}])
->with('addons.removals')
->get()->each(function($addonGroup) {
foreach ($addonGroup->addons as $key => $value) {
if ($value["image_key"]) {
$value["image_key"] = env("AWS_UPLOADS_URL") . $value["image_key"];
}
}
});
'插件':
public function addons() {
return $this->hasMany("App\Addon", "addon_group_id", "id")->where('active', 1);
}
'productAddon':
public function productAddon() {
return $this->hasOne("App\ProductAddon", "addon_id", "id")->without('product');
}
当前解决方案出错:
Call to a member function getRelationExistenceQuery() on array
【问题讨论】:
标签: laravel relationship