La asignación masiva es un proceso de envío de una matriz de datos que se guardará en el modelo especificado a la vez. En general, no necesita guardar datos en su modelo uno por uno, sino más bien en un solo proceso.
La asignación masiva es buena, pero hay ciertos problemas de seguridad detrás de ella. ¿Qué pasa si alguien pasa un valor al modelo y sin protección puede modificar definitivamente todos los campos, incluida la ID? Eso no es bueno.
Digamos que usted tiene mesa "de los estudiantes, con los campos "student_type, nombre, apellido” . Es posible que desee asignar masa 'nombre, apellido', pero que desea proteger student_type de ser cambiado directamente. Ahí es donde se puede llenar y vigilado tener lugar.
Rellenable le permite especificar qué campos son asignables en masa en su modelo, puede hacerlo agregando la variable especial $fillable
al modelo. Entonces en el modelo:
class Student extends Model {
protected $fillable = ['first_name', 'last_name']; //only the field names inside the array can be mass-assign
}
el ' tipo_estudiante ' no está incluido, lo que significa que están exentos.
Guardado es el reverso de rellenable. Si rellenable especifica qué campos se asignarán en masa, guardado especifica qué campos no son asignables en masa. Entonces en el modelo:
class Student extends Model {
protected $guarded = ['student_type']; //the field name inside the array is not mass-assignable
}
debe usar $ fillable o $ guarded, no ambos.
Para más detalles abra el enlace: - Asignación masiva