Laravel 从关系中提取字段

新手上路,请多包涵

我有一个卖家对象,它有一个相关的用户。我需要从 LaravelCollective 填写一个选择,所以我需要做这样的事情:

 {!! Form::selectGroup('seller_id', 'Seller', Seller::with('user')->pluck('user.first_name', 'id')->toArray(), null) !!}

问题是我不能从关系(user.first_name)中获取字段。

我该怎么做?

更新

我想避免这样做…

 <?php
    $sellers = [];

    Seller::with('user')->get()->each(function ($seller) use (&$sellers) {
        $sellers[$seller->id] = $seller->user->first_name;
    });
?>

原文由 Alan 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 545
2 个回答

你可以使用 Laravel 的 pluck 方法:

 $sellers = Seller::with('user')->get()->pluck('user.first_name', 'id')

原文由 Amit Gupta 发布,翻译遵循 CC BY-SA 3.0 许可协议

尝试使用以下解决方案它对我有用,因为我正在使用 laravel 8

 $sellers = Seller::with('user')->get()->pluck('user.*.first_name')

原文由 Ankita 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题