Laravel 中的
理解 "$model->relation();" 和 "$model->relation" 之间的区别
在 Laravel 中,区别"$model->relation();" 和 "$model->relation" 之间在于返回结果的类型:
"$model->relation();" 返回关系对象本身。如果您需要对关系执行其他操作(例如指定其他条件或约束),这可能很有用。
"$model->relation" 返回关系的结果。这通常是包含相关数据的模型数组或集合对象。它表示您在大多数情况下感兴趣的数据。
示例实现
在您的具体场景中,要获取商店的经销商列表及其各自的啤酒,您可以使用以下方法:
<code class="php">$store = $this->store->find($id)->first(); $distributors = $store->distributors; $beers = []; foreach ($distributors as $distributor) { $beers = array_merge($distributor->beers->lists('name', 'id'), $beers); }</code>
以下是详细信息代码:
以上是Laravel 中的 `$model->relation();` 和 `$model->relation` 有什么区别?的详细内容。更多信息请关注PHP中文网其他相关文章!