在Laravel视图中,每个雄辩关系的循环都会改变它下面的任何进一步结果

在Laravel视图中,每个雄辩关系的循环都会改变它下面的任何进一步结果,laravel,eloquent,Laravel,Eloquent,我在a模型中定义了一种雄辩的关系。 在我的控制器中,我得到一些如下配置文件: $profiles = $this->profileRepo->paginate('10'); 在我看来,我在Profile模型中使用了一种关系,它在foreach循环中获取相关的图像和用户信息。 但在这之后,我试图得到个人资料->尼克的名字,它不会工作。我做了一个dd(),它显示模型现在已从配置文件更改为图像 @foreach($profiles as $row) <div>

我在a模型中定义了一种雄辩的关系。 在我的控制器中,我得到一些如下配置文件:

$profiles = $this->profileRepo->paginate('10');
在我看来,我在Profile模型中使用了一种关系,它在foreach循环中获取相关的图像和用户信息。 但在这之后,我试图得到个人资料->尼克的名字,它不会工作。我做了一个dd(),它显示模型现在已从配置文件更改为图像

@foreach($profiles as $row)
  <div>
     @foreach($row->image->where('profile_picture', '1') as $row)
                <a href="$row->file">
                    <i class="fa fa-plus"></i>
                </a>
     @endforeach
  </div>

  <div>
        //If this was ^^^Above^^^ the foreach() loop then it works fine :)
        <h3>{{ $row->nick_name }}</h3>
        <p>{{ $row->about }}</p>
  </div>
@endforeach
@foreach($profiles作为$row)
@foreach($row->image->where('profile\u picture','1')作为$row)
@endforeach
//如果这是^^^^^在^^^ foreach()循环之上,那么它可以正常工作:)
{{$row->nick_name}
{{$row->about}

@endforeach

不确定发生这种情况的原因或如何防止。

您的内部
foreach
循环覆盖
$row
变量

在内部循环中使用不同的变量:

@foreach($profiles作为$profile)
@foreach($profile->image->where('profile\u picture','1')作为$image)
@endforeach
{{$profile->nick_name}
{{$profile->about}

@endforeach
完美!谢谢,伙计:)