gpt4 book ai didi

php - Laravel 从员工表下的相关表中渲染下拉列表

转载 作者:行者123 更新时间:2023-11-29 20:16:18 25 4
gpt4 key购买 nike

我有两张 table 。员工表和角色表。在我的employee.show Blade 中,我想呈现已分配或可供分配的角色的下拉列表。我没有使用集体形式,并且有点困惑,因为所有教程都使用这些形式。

我的 Controller

 public function show($employee)
{
$employee = Employees::find($employee);
$roles = Roles::pluck('role_name', 'id');
return view('employees.show')->withEmployee($employee)->withRoles($roles);
}

还有我的 show.blade。问题是如何从所有其他角色的数据库中提取完整列表以便用户可以更新?

   <div class="form-group">
<label class="col-md-4 control-label" for="roles_id">Role</label>
<div class="col-md-4">
<select id="roles_id" name="roles_id" class="form-control">
<option value="{{ $employee->roles->id }}">{{ $employee->roles->role_name }}</option>
</select>
</div>
</div>

最佳答案

您在 Controller 中所做的事情似乎是正确的。然而,您的 View 应该循环遍历角色并为他们创建选项。请记住,您已经使用了 Role::pluck('role_name', 'id'),它将返回一个 'id' => 'role_name' 数组>.

您可以通过使用三元语句将所选属性添加到员工的角色选项来决定选择哪一个,该语句将员工的 role_id 与我们的 role_id 进行比较当前正在循环中查看。

尝试这样的事情:

<select name="roles_id">
<option value="">Select...</option>
@foreach ($roles as $roleId => $roleName)
<option value="{{ $roleId }}"{!! $employee->role_id == $roleId ? ' selected' : '' !!}>{{ $roleName }}</option>
@endforeach
</select>

关于php - Laravel 从员工表下的相关表中渲染下拉列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39769520/

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