action
Содержимым ячейки будет кнопка с произвольным действием.
Column::action('{name}', '{label}')
Стиль кнопки
Вы можете указать класс иконки для использования (из FontAwesome):
Column::action('show', 'Label')->icon('fa-globe')
Доступно 2 стиля: short
и long
# Это создаст кнопку без надписи, только иконка. Заголовок будет всплывать при наведении.
Column::action('show', 'Label')->icon('fa-globe')->style('short')
# Это создаст кнопку с иконкой и заголовком.
Column::action('show', 'Label')->icon('fa-globe')->style('long')
Важно: стиль по умолчанию — long
без иконки.
Target кнопки
Вы можете указать target для кнопки:
Column::action('show', 'Label')->url('http://test.com/:id')->target('_blank')
URL кнопки
Вы можете указать url для кнопки, :id
будет заменен на id строки, в которой расположена кнопка:
Column::action('show', 'Label')->url('http://test.com/:id')
или вы можете указать функцию для генерация url`а:
Column::action('show', 'Label')->url(function ($instance)
{
return URL::route('my-route', [$instance->id]);
})
Произвольное действие
Используйте метод ->callback()
для задания произвольного действия:
Column::action('show', 'Label')->callback(function ($instance)
{
# Any code you want
})
Фунеция может возвращать редирект:
Column::action('show', 'Label')->callback(function ($instance)
{
return Redirect::route('my-route', [$instance->id]);
})
Примечание: Если ваша функция не возвращает значения, пользователь будет перенаправлен назад после завершения.