小编Eaz*_*Sam的帖子

Laravel如何检查POST请求中的字段是否为空?

要求是更新用户角色。角色可以为空(左侧空白),也可以是一个或多个(如form字段中所提供)roles[]

这是视图表单:

@foreach ($roles as $role)
  <div class="checkbox">
     <label><input name="roles[]" type="checkbox" value="{{$role->id}}" {{ $user->roles->contains($role->id) ? 'checked' : '' }}>{{$role->name}}</label>
  </div>
@endforeach
Run Code Online (Sandbox Code Playgroud)

UserController :: update()中的条件是:

if ($request->roles) {
    // update user roles
}
Run Code Online (Sandbox Code Playgroud)

除了一种情况,一切正常。有时,用户必须留下而没有任何角色。

if($request->roles)isset($request->roles)!empty($request->roles)..都给予同样的老式回复(null''true/flase)。

案例:分配了一个或多个角色时

  +request: ParameterBag {#41 ?
    #parameters: array:6 [?
      "_method" => "PUT"
      "_token" => "a8oIPQFBMbhjanikX8v83qeOcfRE0N4UKTcTQDig"
      "name" => "New User Name"
      "email" => "newuser@testserver.asap"
      "password" => ""
      "roles" => array:2 [?
        0 …
Run Code Online (Sandbox Code Playgroud)

php validation postdata laravel laravel-5

3
推荐指数
2
解决办法
6122
查看次数

标签 统计

laravel ×1

laravel-5 ×1

php ×1

postdata ×1

validation ×1