Potentes objetos de datos para Laravel
Este paquete permite la creación de objetos de datos enriquecidos que se pueden utilizar de varias maneras. Al utilizar este paquete, solo necesita describir sus datos una vez:
- en lugar de una solicitud de formulario, puede utilizar un objeto de datos
- en lugar de un transformador API, puedes usar un objeto de datos
- en lugar de escribir manualmente una definición mecanografiada, puede usar... un objeto de datos
Un objeto específico laravel-data
es solo un objeto PHP normal que se extiende desde Data
:
use Spatie LaravelData Data ;
class SongData extends Data
{
public function __construct (
public string $ title ,
public string $ artist ,
) {
}
}
Al extender desde Data
habilita muchas funciones nuevas como:
- Transformar automáticamente objetos de datos en recursos (como los recursos de la API de Laravel)
- Transforme solo las partes solicitadas de objetos de datos con propiedades diferidas
- Crear automáticamente objetos de datos a partir de datos de solicitud y validarlos
- Resolver automáticamente reglas de validación para propiedades dentro de un objeto de datos
- Haga posible construir un objeto de datos de cualquier tipo que desee.
- Agregue soporte para validar automáticamente objetos de datos al crearlos
- Genere definiciones de TypeScript a partir de sus objetos de datos que puede usar en la interfaz
- Guardar objetos de datos como propiedades de un modelo Eloquent
- Y mucho más...
¿Por qué usarías este paquete?
- Puede estar seguro de que los datos se escriben cuando sale de su aplicación y regresa desde la interfaz, lo que genera muchos menos errores.
- No es necesario escribir las mismas propiedades tres veces (en un recurso, en un objeto de transferencia de datos y en la validación de solicitudes)
- Necesita escribir muchas menos reglas de validación porque son obvias a través del sistema de tipos de PHP.
- Obtienes versiones TypeScript de los objetos de datos de forma gratuita.
¿Eres un aprendiz visual?
En esta charla, impartida en Laracon, verás una introducción a Laravel Data.
Apóyanos
Invertimos muchos recursos en la creación de los mejores paquetes de código abierto. Puedes apoyarnos comprando uno de nuestros productos pagos.
Apreciamos mucho que nos envíe una postal desde su ciudad natal, mencionando cuál de nuestros paquetes está utilizando. Encontrarás nuestra dirección en nuestra página de contacto. Publicamos todas las postales recibidas en nuestro muro virtual de postales.
Documentación
Encontrará la documentación completa en el sitio de documentación dedicado.
Pruebas
Registro de cambios
Consulte CHANGELOG para obtener más información sobre los cambios recientes.
Contribuyendo
Consulte CONTRIBUCIÓN para obtener más detalles.
Vulnerabilidades de seguridad
Revise nuestra política de seguridad sobre cómo informar vulnerabilidades de seguridad.
Créditos
- Rubén Van Assche
- Aidan Casey (atributos de validación)
- Todos los contribuyentes
Licencia
La Licencia MIT (MIT). Consulte el archivo de licencia para obtener más información.