【问题标题】:Laravel checkbox $request issueLaravel 复选框 $request 问题
【发布时间】:2018-11-12 19:15:14
【问题描述】:

我正在尝试将 2 个复选框数组传递给我的控制器:在 DB 中插入和/或修补的角色和权限。

在我的控制器中,我正在传递要在刀片上显示的集合:

$roles = Role::all();
$permissions = Permission::all();

一切正常,因为它显示了名称和复选框。 提交时还有两个问题:

  • $request 为每个没有角色/权限名称的简单数组显示。
  • 我没有得到未选中的“关闭”。

http://prntscr.com/jq61p6

我希望为特定的$user->id 插入/修补角色和权限。

我假设问题出在刀片和我的复选框输入中:

<form method="POST" action="{{ route('roles-permissions',['id' =>$user->id]) }}">
            {{ csrf_field() }}

        <h5>User Roles</h5>
        <div class="col-xs-12">
            @foreach ($roles as $role)
                {{ Form::checkbox('roles[]',  null, true, ['class' => 'name'] ) }}
                {{ Form::label($role->name, ucfirst($role->name)) }}<br>
            @endforeach
        </div>
        <div class="break-20"></div>
        <h5>User Permissions</h5>
        <div class="col-xs-12">
            @foreach ($permissions as $permission)
                {{ Form::checkbox('permissions[]', null , false, ['class' => 'name']) }}
                {{ Form::label($permission->name, ucfirst($permission->name)) }}<br>
            @endforeach
        </div>
        {!! Form::submit('Save Roles and Permissions', ['class=', '"btn btn-primary width-250 mt-20"']); !!}

        </form>

我该如何解决这个问题,以便我可以看到角色和权限名称,以便我可以通过我的控制器获取正确的权限/角色并将它们保存到我的角色/用户和权限/用户表中?

谢谢。

【问题讨论】:

标签: laravel


【解决方案1】:

第三个参数将决定是否检查。使用null 而不是true & 让我们检查它是否有效。

【讨论】:

  • 不,但是TBH,我只能接受“on”,但正如您从我的屏幕截图中看到的那样,我没有在请求转储中获得角色/权限的实际名称,如何我解决了吗?
  • 第一个参数将决定输入字段名称。在您的情况下,它是角色和权限。您的预期结果是什么?
  • 我在第二个参数中输入了$permission-&gt;name,我做对了,实际上我不需要。我只需要检查两件事:我是否能够保存到 DB 以及是否能够从 DB 中检索。我会在这里更新评论。
猜你喜欢
  • 1970-01-01
  • 2017-02-18
  • 1970-01-01
  • 1970-01-01
  • 2021-12-17
  • 1970-01-01
  • 2011-03-15
  • 1970-01-01
相关资源
最近更新 更多