【发布时间】:2016-03-25 20:10:28
【问题描述】:
我有三个模型。类别、产品和变体。一个类别有很多产品,一个产品有很多变体。我正在尝试做的是获得具有至少一种产品的类别,该产品具有至少一种变体。我已经能够用这段代码做到这一点:
$categories = Category::with(['products', 'products.variants'])
->whereHas('products', function($query) {
$query->whereHas('variants', function() {});
})
->get();
但是,棘手的部分是,我想排除没有任何变化的产品。如果不排除整个类别,我似乎无法做到这一点。
简而言之。结果集将仅包括具有至少一种产品的类别,该产品具有至少一种变体。并且产品的(子)结果集将仅包括具有至少一个变体的产品。
对不起,如果这很难理解。老实说,我不知道如何表达这样一个奇怪的具体问题。
【问题讨论】:
标签: php sql laravel orm eloquent