Estoy planeando usar Datatables como servicio y necesito agregar columnas Mostrar, Editar y Eliminar. Encontré un ejemplo en la documentación (http://datatables.yajrabox.com/eloquent/add-edit-remove-column) pero no pude encontrar ninguno para 'Datatables as Service'
obtuve la solución de otro problema.
public function ajax() {
$query = $this->query();
return $this->datatables
->eloquent($this->query())
->addColumn('action', function ($query) {
return '<a href="' . route("admin.districts.edit", $query->id) . '" class="btn btn-xs btn-primary"><i class="glyphicon glyphicon-edit"></i> Edit</a>';
})
->make(true);
}
Hola Yajra, necesito agregar el botón de eliminar y editar con una columna diferente, pero estoy usando la acción, solo usa una columna. mostrar lo que hago ?? me puedes ayudar
obtuve la solución de otro problema.
public function ajax() { $query = $this->query(); return $this->datatables ->eloquent($this->query()) ->addColumn('action', function ($query) { return '<a href="' . route("admin.districts.edit", $query->id) . '" class="btn btn-xs btn-primary"><i class="glyphicon glyphicon-edit"></i> Edit</a>'; }) ->make(true); }
Para cualquiera que imprima el HTML sin procesar al hacer esto, también tuve que agregar rawColumns ('acción') para evitar que el HTML se escape, es decir:
public function ajax() {
$query = $this->query();
return $this->datatables
->eloquent($this->query())
->addColumn('action', function ($query) {
return '<a href="' . route("admin.districts.edit", $query->id) . '" class="btn btn-xs btn-primary"><i class="glyphicon glyphicon-edit"></i> Edit</a>';
})
->rawColumns(['action'])
->make(true);
}
Comentario más útil
obtuve la solución de otro problema.