Можно ли добавить сообщение об успешном завершении в ответ JSON с помощью Fractal? Я бы хотел, чтобы структура выглядела следующим образом
{
"success": true,
"message": "Clients found",
"_metadata": {
"total_count": 2
},
"data": {
"clients": [
]
}
}
Я написал следующий код для возврата данных
$response_data = fractal()
->collection($person_array)
->transformWith(new ResponseTransformer())
->toArray();
Нужно ли мне создавать новый сериализатор, чтобы получить этот формат? Я слежу за этой документацией https://packagist.org/packages/spatie/fractalistic, но нет возможности добавить дополнительные ключевые значения, такие как success: true.
Я также хочу использовать этот формат для всех моих ответов API. Можно ли создать общий Transformer, который возвращает данные любого массива, которые я передаю в него, вместо создания преобразователя для каждой модели?






Laravel фрактал позволяет добавлять метаданные в коллекции:
fractal()
->addMeta([
'status' => [
'success' => true,
'code' => 1,
'message' => 'Test'
]
])
Результирующий вывод JSON
"meta": {
"status": {
"success": true,
"code": 1,
"message": "Test"
}
}
Вы можете прочитать это: github.com/spatie/fractalistic#including-meta-data
Спасибо, я не был уверен, единственный способ сделать это или нет. есть ли способ переименовать мета-ключ? Я бы хотел, чтобы это был
_metadata, чтобы он отображался над данными