我正在尝试从嵌套关系中提取字段。
我的类结构是:
User hasMany GroupUser
GroupUser belongsTo Group
Group belongsToMany Promotion这样我就可以从用户那里得到很好的促销
$user->groupUsers()->with('group')->with('group.promotions')->get();
{
"id": 4,
....
"promotions": [
{
"id": 3,
"group_id": 11,
"user_id": 4,
...
"group": {
"id": 11,
...
"promotions": [
{
"id": 8,
"title": "Lavagem Mensal 1 unid.",
"const": "LAVAGEM_MENSAL1_UNID",
"pivot": {
"group_id": 11,
"promotion_id": 8
}
}
]
}
}
]
}所以我需要的是得到一份Promotions.const的名单。
尝试过此方法,但返回[null]
$user->groupUsers()->with('group')->with('group.promotions')->get()->pluck('group.promotions.const');更新:现在我通过这种方式来实现它。
$user->groupUsers()->with('group')->with('group.promotions')->get()->pluck('group.promotions.*.const');
"promotions": [
[
"BRF_LAVAGEM_MENSAL_1_UNID"
]
]只需将此数组展平即可。
发布于 2021-01-19 23:04:38
试试这个:
$user->groupUsers()
->with('group.promotions')
->get()
->pluck('group.promotions.*.const')
->collapse();https://stackoverflow.com/questions/65793900
复制相似问题