Laravel-datatables: Valor de columna de identificación incorrecto

Creado en 9 dic. 2016  ·  3Comentarios  ·  Fuente: yajra/laravel-datatables

Resumen del problema o solicitud de función

Los valores de la columna id son incorrectos cuando id no se solicita desde el lado de javascript.

El problema solo aparece cuando no menciono la columna id en la configuración de tablas de datos columns .

$('#table').DataTable({
    columns: [
            { data: 'id', name: 'id' }, // ----> Problem appear when i don't mention this column in javascript
            { data: 'user.first_name', name: 'user.first_name' },
            ...
    ]
})

En el lado de PHP tengo algo como esto

$students = Student::with(['user', ...]);

return Datatables::of($students)
->addColumn('actions', function ($row)
{
    $row->id // ----> Will contain wrong value, it will contain users.id instead of students.id

    return $actions;
})
->make(true);

El valor de id será users.id lugar de students.id

Detalles del sistema

  • Sistema operativo
  • Versión PHP: 5.6
  • Laravel Versión 5.3.26
  • Laravel-Datatables 6.22.5
documentation question

Comentario más útil

Creo que esto es un error en el marco de laravel y la solución para solucionarlo es agregar select('students.*') en su consulta como se documenta aquí .

$students = Student::with(['user', ...])->select('students.*');

return Datatables::of($students)
->addColumn('actions', function ($row)
{
    $row->id // ----> Will contain wrong value, it will contain users.id instead of students.id

    return $actions;
})
->make(true);

Todos 3 comentarios

Creo que esto es un error en el marco de laravel y la solución para solucionarlo es agregar select('students.*') en su consulta como se documenta aquí .

$students = Student::with(['user', ...])->select('students.*');

return Datatables::of($students)
->addColumn('actions', function ($row)
{
    $row->id // ----> Will contain wrong value, it will contain users.id instead of students.id

    return $actions;
})
->make(true);

Gracias, está funcionando bien ahora

@yajra , tu respuesta me ayudó, gracias. Sería mejor si eliminara el comentario, ya que en su ejemplo debería ser lo contrario. Contendrá el valor correcto.
Gracias

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

Temas relacionados

sangnguyenplus picture sangnguyenplus  ·  3Comentarios

Mopster picture Mopster  ·  3Comentarios

alejandri picture alejandri  ·  3Comentarios

jgatringer picture jgatringer  ·  3Comentarios

FilipeBorges1993 picture FilipeBorges1993  ·  3Comentarios