2015-06-12 4 views

ответ

8

Используйте accessor на модели:

public function getColumnNameAttribute($value) { 
    return json_decode($value); 
} 

или использовать attribute casting сказать Laravel, чтобы сделать это автоматически:

protected $casts = [ 
    'column_name' => 'array', 
]; 

array приведение типа особенно полезно при работе с столбцами, которые хранятся как сериализованные JSON.

Обратите внимание, что вам придется останавливать json_encode, используя свои данные, так как Laravel выполнит этот шаг автоматически.

+0

Возможно ли кастинг атрибутов с классом DB? –

+0

@ Zigson Нет, но вам следует избегать прямых вызовов БД, если это вообще возможно. Вы теряете преимущества таких вещей, как мягкие удаления, отношения и т. Д. – ceejayoz

+0

Благодарим вас за ответ. Я посмотрю, что я могу сделать. –

Смежные вопросы