0

我有一个带有一些复选框的表单,当检查某些复选框时,我有条件地创建一个雄辩模型的连接

$collection = Model::with('some_relation')
     ->when(!is_null($request->input('make')), function($query) {
         $query->with('make');
      })
      ->get();

这一切都按预期工作。

我需要做的是检查视图中是否存在该关系。在我看来,我有一个表,需要知道关系是否存在,如果存在,我会为该关系创建一个表头。

我已经尝试了我能找到的一切,但没有任何效果。我什至尝试过以下方法,但即使关系不存在它也会返回 true

$test = $collection->contains(function ($value, $key) {
    return $value['make'];
});

我也试过count($collection->make);,但它说

此集合实例上不存在属性 [make]

我只想看看关系是否存在

4

1 回答 1

0

找到了答案

$test = $collection->filter->relationLoaded('make')->isEmpty();

如果关系不存在,将返回 true

于 2019-06-12T08:11:38.447 回答