Objets de données puissants pour Laravel
Ce package permet la création d'objets de données riches qui peuvent être utilisés de différentes manières. En utilisant ce package, vous ne devez décrire vos données qu'une seule fois :
- au lieu d'une demande de formulaire, vous pouvez utiliser un objet de données
- au lieu d'un transformateur API, vous pouvez utiliser un objet de données
- au lieu d'écrire manuellement une définition dactylographiée, vous pouvez utiliser... un objet de données
Un objet spécifique laravel-data
n'est qu'un objet PHP classique qui s'étend de Data
:
use Spatie LaravelData Data ;
class SongData extends Data
{
public function __construct (
public string $ title ,
public string $ artist ,
) {
}
}
En étendant Data
vous activez de nombreuses nouvelles fonctionnalités telles que :
- Transformer automatiquement les objets de données en ressources (comme les ressources de l'API Laravel)
- Transformez uniquement les parties demandées des objets de données avec des propriétés paresseuses
- Créer automatiquement des objets de données à partir des données de requête et les valider
- Résoudre automatiquement les règles de validation pour les propriétés au sein d'un objet de données
- Permet de construire un objet de données à partir de n'importe quel type de votre choix
- Ajouter la prise en charge de la validation automatique des objets de données lors de leur création
- Générez des définitions TypeScript à partir de vos objets de données que vous pouvez utiliser sur le frontend
- Enregistrer les objets de données en tant que propriétés d'un modèle Eloquent
- Et bien plus encore...
Pourquoi utiliseriez-vous ce package ?
- Vous pouvez être sûr que les données sont saisies lorsqu'elles quittent votre application et reviennent du frontend, ce qui provoque beaucoup moins d'erreurs.
- Vous n'êtes pas obligé d'écrire trois fois les mêmes propriétés (dans une ressource, dans un objet de transfert de données et lors de la validation d'une requête)
- Vous devez écrire beaucoup moins de règles de validation car elles sont évidentes grâce au système de types PHP.
- Vous obtenez gratuitement les versions TypeScript des objets de données
Êtes-vous un apprenant visuel?
Dans cette conférence donnée à Laracon, vous verrez une introduction à Laravel Data.
Soutenez-nous
Nous investissons beaucoup de ressources dans la création des meilleurs packages open source de leur catégorie. Vous pouvez nous soutenir en achetant l'un de nos produits payants.
Nous apprécions grandement que vous nous envoyiez une carte postale de votre ville natale, mentionnant le(s) forfait(s) que vous utilisez. Vous trouverez notre adresse sur notre page contact. Nous publions toutes les cartes postales reçues sur notre mur virtuel de cartes postales.
Documentation
Vous trouverez une documentation complète sur le site de documentation dédié.
Essai
Journal des modifications
Veuillez consulter CHANGELOG pour plus d'informations sur ce qui a changé récemment.
Contribuer
Veuillez consulter CONTRIBUER pour plus de détails.
Failles de sécurité
Veuillez consulter notre politique de sécurité pour savoir comment signaler les vulnérabilités de sécurité.
Crédits
- Ruben Van Assche
- Aidan Casey (attributs de validation)
- Tous les contributeurs
Licence
La licence MIT (MIT). Veuillez consulter le fichier de licence pour plus d'informations.