Laravel et Eloquent aident à accélérer le développement d'applications et de plates-formes, en fournissant une solution adéquate à la plupart des problèmes. Les exigences sont traitées avec un développement plus rapide, ainsi qu'un code bien organisé, réutilisable, maintenable et évolutif.
Les développeurs peuvent travailler dans Eloquent
avec plusieurs bases de données efficacement en utilisant une implémentation ActiveMethod. Il s'agit d'un modèle architectural où le modèle créé dans la structure Model-View-Controller (MVC) correspond à une table de la base de données. L'avantage est que les modèles effectuent des opérations de base de données courantes sans coder de longues requêtes SQL. Les modèles vous permettent d'interroger des données dans des tableaux et d'insérer de nouveaux enregistrements dans des tableaux. Le processus de synchronisation de plusieurs bases de données exécutées sur différents systèmes est simplifié. Vous n'avez pas besoin d'écrire des requêtes SQL. Tout ce que tu dois faire est defiTerminez les tables de la base de données et les relations entre elles, et Eloquent fera le reste du travail.
Apprécier l'utilité d'Eloquent ORM et comprendre l'écosystème est un must. Étapes pour commencer :
migration
utilisation de la console Artisan
eloquent
seed
de la base de donnéesArtisan Console
est le nom de l'interface de ligne de commande incluse dans Laravel. Fournit un ensemble de commandes utiles à utiliser lors du développement de votre application. Il est piloté par le composant puissant Symfony Console
.
Pour voir une liste de toutes les commandes Artisan disponibles, vous pouvez utiliser la commande list :
php artisan list
Toutes les commandes sont accompagnées d'une description concise de ses arguments et options. Ceci est affiché dans un écran "aide". Pour afficher un écran d'aide, faites simplement précéder le nom de la commande par "help" comme indiqué :
php artisan help migrate
Migration
La migration est un processus de gestion de base de données en écrivant PHP à la place SQL
. Fournit un moyen d'ajouter un contrôle de version à la base de données.
Pour créer une migration, exécutez simplement la commande suivante :
php artisan make:migration create_student_records
Cela crée le fichier de migration. Dans votre éditeur de texte, ouvrez le fichier que vous venez de créer dans le dossier database\migrations
:
<?php
use IlluminateSupportFacadesSchema;
use IlluminateDatabaseSchemaBlueprint;
use IlluminateDatabaseMigrationsMigration;
class CreateStudentRecordsTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('student__records', function (Blueprint $table) {
$table->increments('id');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('student__records');
}
}
Le code est une classe avec le même nom 'create student records
', et a deux méthodes : haut et bas. La méthode up doit apporter des modifications à la base de données ; Ainsi, chaque fois que vous migrez votre base de données, tout code de la méthode up sera exécuté. D'autre part, la méthode down devrait annuler ces modifications de la base de données ; donc chaque fois que vous exécutez le rollback
de migration
, la méthode down devrait annuler ce que la méthode up a fait. A l'intérieur de la méthode up
il y a le constructeur de schéma utilisé pour créer et manipuler les tables. Que se passe-t-il si vous annulez certaines de vos migrations ? Tout ce que vous avez à faire est d'implémenter la commande suivante :
php artisan migrate:rollback
Et il ramassera le dernier migration
qui a été mis en œuvre. De plus, vous pouvez restaurer complètement la base de données en exécutant :
php artisan migrate:reset
Cela annulera toutes vos migrations.
Eloquent
Une fois la migration de la base de données terminée, le processus suivant est la seeding
. Eloquent
entre en jeu depuis le seeding
insère des enregistrements dans notre base de données. Vous devrez donc créer les modèles avant de remplir la base de données. Chaque table de base de données a un modèle correspondant qui est utilisé pour interagir avec cette table. Les modèles vous permettent d'interroger les données de vos tables, ainsi que d'insérer de nouveaux enregistrements dans la table. Le moyen le plus simple d'instancier le modèle consiste à utiliser la commande suivante :
php artisan make:model Student
Un exemple de modèle est présenté ci-dessous Student
, qui peut être utilisé pour récupérer et stocker des informations à partir de la table de base de données de nos étudiants :
<?php
namespace App;
use IlluminateDatabaseEloquentModel;
class Student extends Model
{
//
}
Lorsque vous générez un modèle et que vous souhaitez en même temps générer une migration de base de données, vous pouvez utiliser l'option –migration
o -m
:
php artisan make:model Student --migration
php artisan make:model Student -m
Les semoirs globaux sont un ensemble spécial de classes qui nous permettent de remplir notre base de données encore et encore avec exactement les mêmes données. Nous implémentons la commande suivante :
php artisan make:seeder StudentsRecordSeeder
Dans l'éditeur de texte, sous le dossier seeds, ouvrez le fichier nouvellement créé avec le nom de fichier : StudentsRecordSeeder.php
. Comme vous pouvez le voir, il ne s'agit que d'une classe très simple avec une seule méthode appelée run
()
<?php
use IlluminateDatabaseSeeder;
class StudentsRecordSeeder extends Seeder
{
/**
* Run the database seeds
* @return void
*/
public function run()
{
//
}
}
Le code n'est qu'un wrapper autour d'une classe de commande de console, spécialement conçu pour aider à la tâche de seeding
. Modifiez le code, puis enregistrez-le.
public function run()
{
echo 'Seeding!';
}
Et aller au terminal:
php artisan db:seed --class=StudentsRecordSeeder
Vous pouvez maintenant remplir le tableau avec quelques entrées et exécuter :
php artisan db:seed --class=class=StudentsRecordSeeder
Ici, vous pouvez continuer à supprimer, ajouter, modifier des entrées dans la base de données, puis les restaurer avec une simple commande.
Les opérations CRUD avec le mappeur objet-relationnel (ORM) Laravel Eloquent permettent aux développeurs Laravel de travailler plus facilement avec plusieurs bases de données. Il effectue des opérations de création, de lecture, de mise à jour et de suppression (CRUD) et mappe des modèles d'objets sur des tables de base de données. Gère toutes les interactions de base de données requises pour les opérations CRUD.
Vous pouvez utiliser la méthode ::create pour insérer un nouvel enregistrement dans la base de données.
student_record::create(array(
'first_name' => 'John',
'last_name' => 'Doe',
'student_rank' => 1
));
En plus de la méthode de création simple présentée ci-dessus, vous pouvez également créer un nouvel objet et lui attribuer différents attributs. Ensuite, vous pouvez appeler la fonction save() et exécuter le code. Des méthodes comme firstOrCreate
() ou firstOrNew
() sont d'autres options pour créer des enregistrements. Ceux-ci vous permettront de trouver un étudiant avec certains attributs; si cet étudiant n'est pas trouvé, vous le créerez dans la base de données ou instancierez une nouvelle instance.
En utilisant Eloquent ORM, vous pouvez trouver des enregistrements dans votre base de données. Les requêtes sont construites simplement et offrent un flux fluide. Pour créer des relevés ::where
, vous utiliserez les méthodes get
() Et first
(). La méthode first
() ne renverra qu'un seul enregistrement, tandis que la méthode get
() renverra un tableau bouclable d'enregistrements. Aussi, la méthode find
() peut être utilisé avec un tableau de clés primaires, qui renverra une collection d'enregistrements correspondants. Voici quelques exemples:
$student = Students::all();
Ce code obtient tous les étudiants. Alors que le code suivant trouve un étudiant spécifique par ID :
$étudiant = Etudiants ::find(1);
De plus, comme indiqué ci-dessous, le code décrit la recherche d'un étudiant en fonction d'un attribut spécifique.
$JohnDoe = Students::where('name', '=', 'John Doe')->first();
Pour la méthode get(), ce code montre comment trouver un étudiant avec un niveau supérieur à 5.
$rankStudents = Student::where('student_rank', '>', 5)->get();
La mise à jour des enregistrements à l'aide d'Eloquent est tout aussi simple. Pour mettre à jour un enregistrement, recherchez simplement l'enregistrement que vous souhaitez mettre à jour, modifiez les attributs et enregistrez. Par exemple, pour changer le niveau scolaire de l'élève de John Doe à 5, recherchez d'abord l'élève, puis exécutez la méthode save.
$JohnDoe = Bear::where('name', '=', 'John Doe')->first();
$JohnDoe->danger_level = 5;
$JohnDoe->save();
La méthode de sauvegarde peut également être utilisée pour mettre à jour des modèles qui existent déjà dans la base de données.
Eloquent se vante de son processus de mise à jour facile des enregistrements, mais il a la même histoire avec la suppression. Il existe deux options : extraire les enregistrements et exécuter la méthode de suppression, ou simplement utiliser la méthode de destruction. Pour rechercher et supprimer un enregistrement, exécutez simplement les commandes suivantes :
$student = Students::find(1);
$student->delete();
Pour supprimer un enregistrement et plusieurs enregistrements, les commandes sont exécutées :
Students::destroy(1);
Students::destroy(1, 2, 3);
Notez que les paramètres de destroy ne sont que des clés primaires contrairement à la méthode delete qui peut accepter n'importe quelle colonne de base de données.
Pour rechercher et supprimer tous les étudiants au-dessus du niveau 10.
Students::where('student_rank', '>', 10)->delete();
Ercole Palmeri
Google DeepMind présente une version améliorée de son modèle d'intelligence artificielle. Le nouveau modèle amélioré offre non seulement…
Laravel, célèbre pour sa syntaxe élégante et ses fonctionnalités puissantes, constitue également une base solide pour l'architecture modulaire. Là…
Cisco et Splunk aident leurs clients à accélérer leur transition vers le centre d'opérations de sécurité (SOC) du futur avec…
Les ransomwares ont dominé l’actualité ces deux dernières années. La plupart des gens savent bien que les attaques…
Une opération d'ophtalmoplastie à l'aide de la visionneuse commerciale Apple Vision Pro a été réalisée à la polyclinique de Catane…
Développer la motricité fine grâce au coloriage prépare les enfants à des compétences plus complexes comme l’écriture. Colorier…
Le secteur naval est une véritable puissance économique mondiale, qui a navigué vers un marché de 150 milliards...
Lundi dernier, le Financial Times a annoncé un accord avec OpenAI. FT autorise son journalisme de classe mondiale…