Las plantillas típicas en Laravel 10 se definen mediante $casts
Propiedad de la matriz. Sin embargo, en Laravel 11, puedes especificar un casts()
El método, que abre la posibilidad de utilizar rutas fijas sobre ruedas integradas, así como definir rutas fijas sobre ruedas personalizadas:
use App\Enums\UserOption;
use Illuminate\Database\Eloquent\Casts\AsEnumCollection;
// ...
/**
* Get the attributes that should be cast.
*
* @return array<string, string>
*/
protected function casts(): array
{
return [
'email_verified_at' => 'datetime',
'password' => 'hashed',
'options' => AsEnumCollection::of(UserOption::class),
];
}
En Laravel 10, la misma plantilla se vería así ya que no se pueden llamar métodos estáticos al definir una propiedad de matriz:
protected $casts = [
'options' => AsEnumCollection::class.':'.UserOption::class,
];
Esta actualización es compatible con versiones anteriores de Laravel 10 y aún puede seleccionar plantillas a través de $casts
Propiedad combinada con nueva. casts()
camino. el $casts
Propiedad y casts()
El método se fusiona y las claves del método tienen prioridad sobre el método. $casts
Propiedad.
Recomiendo mover las plantillas a la versión del método si desea aprovechar los métodos fijos de las ruedas integradas.
Junto con una actualización para seleccionar actores trans casts()
método, se han agregado nuevos métodos estáticos a las ruedas integradas para facilitar la selección de plantillas:
AsCollection::using(OptionCollection::class);
AsEncryptedCollection::using(OptionCollection::class);
AsEnumArrayObject::using(OptionEnum::class);
AsEnumCollection::using(OptionEnum::class);
preguntad por Nuño Maduroquien implementó esta característica en Solicitud de Retiro No. 47237!
«Fanático del café. Amable aficionado a los zombis. Devoto practicante de la cultura pop. Malvado defensor de los viajes. Organizador típico».