Вложенный запрос Laravel rest api

#laravel #rest #api #nested

#laravel #rest #API #вложенный

Вопрос:

Я пишу rest API в Laravel. Все в порядке, когда параметры запроса не являются вложенными. Я могу получить любые входные параметры с помощью -> . например

 $model->update([
    'column' => $request->value,
]);
  

Однако, если я хотел бы, чтобы параметры имели вложенную структуру, каков способ их получения? $request->value->nested_value не работает, поскольку value не является объектом.

Пример параметров вложенного запроса:

 {
    "parameters": {
        "name": "game9",
        "images": {
            "icon_id": 1,
            "banner_id": 1,
        }
    }
}
  

Комментарии:

1. Пожалуйста, поделитесь примером вашего запроса

Ответ №1:

Когда вы получаете значения из запроса, они не являются objects . Они есть arrays .

Вам нужно получить к ним доступ следующим образом:

$request->value['nested_value']

Комментарии:

1. Вы правы, но проблема в том, что значение в запросе не требуется, и если пользователь не установил значение, возникает ошибка с указанием неопределенного индекса ‘nested_value’. Есть ли другой способ преодолеть такую проблему?

2. @MohammadrezaSahelgozin Вы должны добавить проверку запроса, прежде чем использовать данные, laravel.com/docs/5.8/validation по этой ссылке показано, как вы можете этого добиться.