Laravel-datatables: Cómo pasar un parámetro adicional con otro parámetro predeterminado

Creado en 9 abr. 2018  ·  7Comentarios  ·  Fuente: yajra/laravel-datatables

Resumen del problema o solicitud de función

Hola,

Quiero pasar un parámetro adicional con otro parámetro predeterminado que se pasa por sí mismo en la solicitud ajax.
Quiero pasar una variable que no es parte de los datos / campos que se muestran en las tablas.
Básicamente, quiero agregar un filtro que no sea parte de las columnas que se muestran actualmente, ¿cómo puedo pasarlo?

question

Comentario más útil

He pasado el parámetro adicional con la tabla de datos así-

->with([
   "cities" => app(\App\Http\Controllers\HelperController::class)->cityListing(),
  "leadCounters" =>  $this->leadCounters
])
->make(true);

Pero, ¿cómo puedo obtener estos parámetros adicionales en la respuesta de Yajra Datatable?

Todos 7 comentarios

En ajax minificado, puede agregar una matriz de parámetros que se incluirán de forma predeterminada a pedido. ¿Quizás esto es lo que necesitas? Consulte los documentos https://yajrabox.com/docs/laravel-datatables/master/html-builder-minified-ajax para obtener ref.

@jatinbphp, ¿te refieres a esto?
función pública userSkpDataTable ($ pes)
{
$ skp = skp :: isAktif ($ pes, 1);
return Datatables :: of ($ skp)
-> addColumn ('acción', función ($ usuario) use ($ pes) {
return ' enlace con 2 parámetros ';
}) -> hacer (verdadero);
}

¿Está utilizando el constructor de html o está escribiendo su propio script?

De todos modos, prueba este js:

`` js
$ ('# ..'). DataTable ({
ajax: {
url: '',
datos: función (datos) {datos.clave = valor; }
},
...
})

Hola, Yajra, estoy tratando de pasar un parámetro adicional del controlador a la vista cuando uso Yajra, así que obtengo algo como la cantidad total obtenida del filtro de rango de tiempo. vea la captura de pantalla a continuación de mi controlador.
En mi opinión, no puedo hacer esto {{cashMade}}

Me sale Errr: uso de cashMade constante indefinido - asumido 'cashMade'

yaj

@ laurence702 puede usar con api para agregar datos en la respuesta.

Route::get('user-data', function() {
    $model = App\User::query();

    return DataTables::eloquent($model)
                ->with('posts', 100)
                ->with('comments', 20)
                ->toJson();
});

He pasado el parámetro adicional con la tabla de datos así-

->with([
   "cities" => app(\App\Http\Controllers\HelperController::class)->cityListing(),
  "leadCounters" =>  $this->leadCounters
])
->make(true);

Pero, ¿cómo puedo obtener estos parámetros adicionales en la respuesta de Yajra Datatable?

@UmeshKrRana haz lo siguiente:

Guarde la inicialización de DataTable en una variable:

var table = $('.vehicles-report-table').DataTable({...})

Luego acceda a los datos a través de la función drawCallback:

drawCallback: function(settings) { console.log(table.ajax.json()) }

¿Fue útil esta página
5 / 5 - 1 calificaciones

Temas relacionados

vipin733 picture vipin733  ·  3Comentarios

shadoWalker89 picture shadoWalker89  ·  3Comentarios

Mopster picture Mopster  ·  3Comentarios

FilipeBorges1993 picture FilipeBorges1993  ·  3Comentarios

ahmadbadpey picture ahmadbadpey  ·  3Comentarios