gpt4 book ai didi

php - 根据数据透视表返回选中的复选框

转载 作者:行者123 更新时间:2023-12-02 12:28:17 29 4
gpt4 key购买 nike

这个问题是关于 Laravel 和 PHP 的。

我正在构建一个表单,允许使用复选框将用户(玩家)分配给团队/从团队中取消分配。

许多用户可以属于许多团队。我有一个数据透视表 team_user 来管理多对多关系。

我无法根据数据透视表中是否存在关联来填充复选框。

到目前为止,我将它们分为两个单独的“位”,您可以在下面看到:

我的 Controller :

$users_checked = $team->users()->get();
$users = User::all();
return View::make('team/addplayers', compact('users', 'team', 'users_checked'));

我的观点:

@foreach ($users_checked as $user_checked)
<p>
{{ Form::checkbox('player[]', $user_checked->id, true) }}
{{ Form::label('email', $user_checked->email) }}
</p>
@endforeach

@foreach($users as $user)
<p>
{{ Form::checkbox('player[]', $user->id ) }}
{{ Form::label('email', $user->email) }}
</p>
@endforeach

将这些“组合”到一个列表中的最明智的方法是什么,如果关联存在于数据透视表中,则勾选该复选框,如果不存在,则不勾选该复选框?

非常感谢您的帮助!

最佳答案

这些答案让我走上了正轨,谢谢。我的实际解决方案如下:

在我的 Controller 中:

public function showAddPlayer(Team $team)
{
$users = User::all();
return View::make('team/addplayers', compact('users', 'team'));
}

在我看来:

@foreach ($users as $user)
<p>
{{ Form::checkbox('player[]', $user->id, $team->users->contains($user->id)) }}
{{ Form::label('email', $user->email) }}
</p>
@endforeach

关于php - 根据数据透视表返回选中的复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23174761/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com