Столбец Laravel DataTables JSON, выходящий из символов

Попытка использовать Yajra DataTables в качестве реализации сервиса, и вот моя проблема:

У меня есть колонка JSON metas Я строю столбцы таблицы на основе полей внутри этого столбца, например:

[ 'data' => 'date', 'name' => 'metas->date AS date', 'title' => 'Data' ],

Так что внутри метас у меня есть:

{
    "date": "2018-09-17",
}

Когда я пытаюсь вернуть это в DataTable, он покидает квоты или избегает обратной косой черты. Таким образом, вывод выглядит так:

"Something" или же "Something \"mmm?\ whatever!" но должно быть справедливо Something,

Пытался ->escapeColumns(false) а также ->rawColumns(['date']) а также ->rawColumns(['metas->date']) и многое другое...

Ответ выглядит так:

{"draw":1,"recordsTotal":77,"recordsFiltered":77,"data":[{"id":43695,"nr":"18-036","date":"\"2018-09-17\""...

Как вы видите, у меня есть дополнительные кавычки в ответе около даты: обычно, если я возвращаю те же данные из БД с помощью ->toJson(), проблем не будет. Что-то не так с декодированием DataTables.

1 ответ

По умолчанию Laravel Datable применяет XSS-фильтр. Вам придется отключить его в столбце или во всем ответе.

https://yajrabox.com/docs/laravel-datatables/10.0/xss

Другие вопросы по тегам