Skip to content

Validating JSON array #173

@vmihaly2020

Description

@vmihaly2020

I have this

 JSON::make('translation', [
                Text::make('language_id')
                    ->withMeta([
                        'value' => $lang->id,
                    ])
                    ->rules(
                        'required'
                 ) ,
                Text::make($lang->name, 'value')
                    ->withMeta([
                        'value' => ($langVal ? $langVal[$lang->id] : ''),
                    ])
                    ->rules(
                      'required'
                    )

            ], 'translation['.$i.']')

                ->flatten();

And I always get this response

{
   "message":"The given data was invalid.",
   "errors":{
      "name":[
         "validation.required"
      ],
      "translation[0].language_id":[
         "validation.required"
      ],
      "translation[0].value":[
         "validation.required"
      ],
      "translation[1].language_id":[
         "validation.required"
      ],
      "translation[1].value":[
         "validation.required"
      ]
   }
}

Payload:

{
   "name":null,
   "translation":[
      {
         "language_id":"2",
         "value":null
      },
      {
         "language_id":"1",
         "value":null
      }
   ],
   "viaResource":null,
   "viaResourceId":null,
   "viaRelationship":null,
   "editing":"true",
   "editMode":"create"
}

How to validate the JSON array field?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions