Hola amigos, ¿ Cual es la diferencia en usar protected <strong>$guarded</strong> o protected <strong>$fillable</strong> en el modelo ?

Diego Burlando

Diego Burlando

Pregunta
studenthace 7 años

Hola amigos, ¿ Cual es la diferencia en usar protected $guarded o protected $fillable en el modelo ?

2 respuestas
para escribir tu comentario
    Alejandro González Reyes

    Alejandro González Reyes

    studenthace 6 años

    Corrección importante:

    fillable: le indica que los campos pasados pueden ser asignados masivamente mendiante Modelo::create([…])

    guarded: le indica que campos no pueden ser asignados masivamente mediante Modelo::create([…]). Esto no quiere decir que no se pueda guardar esa info en la base de datos. Lo puedes hacer manualmente con

    $message = new Message() $message->content = $request->get('content'); $message->image = ... $message->save();
    Gabriel Chávez

    Gabriel Chávez

    studenthace 7 años

    Aquí te va una sencilla explicación de ambas:

    $guarded: se declara siempre con un array, las keys le indican a Eloquent que campos de la base de datos van a estar deshabilitados, para evitar asignarlos al modelo. Con esto no podrás guardar datos en los campos que le indiques.

    $fillable: te permite indicarle a Eloquent que campos si quieres que guarden información en la base de datos, relacionándolos con el modelo.

    protected: permite que se pueda acceder desde la clase que las define y también desde cualquier otra clase que herede de ella. Aunque esto no tiene que ver directamente con Laravel, sino con PHP.

    Saludos 😃

Curso Laravel: PhP con Laravel | Guido Contreras Woda | 2017

Curso Laravel: PhP con Laravel | Guido Contreras Woda | 2017

Con el curso de laravel y PHP, construye una webapp, persiste datos en MySQL, crea notificaciones realtime, crea vistas con Blade, usa Eloquent como OMR, haz deploy a producción. Encuentra el curso completo aquí! | Guido Contreras Woda | 2017

Curso Laravel: PhP con Laravel | Guido Contreras Woda | 2017

Curso Laravel: PhP con Laravel | Guido Contreras Woda | 2017

Con el curso de laravel y PHP, construye una webapp, persiste datos en MySQL, crea notificaciones realtime, crea vistas con Blade, usa Eloquent como OMR, haz deploy a producción. Encuentra el curso completo aquí! | Guido Contreras Woda | 2017