Laravel est un cadre PHP populaire avec des outils ORM éloquents puissants intégrés qui peuvent représenter les tables de base de données via des classes pour simplifier les opérations de données. Pendant le processus de développement, nous devons souvent utiliser la suppression douce, la connexion gauche et d'autres méthodes de requête. Cet article présentera comment implémenter ces fonctions dans le modèle Laravel.
La suppression douce est un moyen logique de supprimer des données en définissant des champs spécifiques (tels que supprimés_at) pour marquer les données supprimées, plutôt que de les supprimer. Cette manière peut récupérer en toute sécurité les données supprimées. Laravel fournit un mécanisme de suppression doux simple et facile à utiliser, l'exemple de code est le suivant:
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;
class Post extends Model
{
use SoftDeletes;
}
Après avoir ajouté des softdeletes, vous pouvez utiliser la fonction Soft Delete. Par exemple, utilisez la méthode «WithTrashed» pour interroger les données supprimées Soft:
<span class="fun">$ Posts = Post :: WithTrashed () -> get ();</span>
Ou récupérer les données supprimées en douceur:
$post = Post::withTrashed()->find($id);
$post->restore();
Le jointure gauche vous permet d'obtenir des données à partir des tables gauche et droite lors de l'interrogation. Même si les données de la table droite ne correspondent pas, les données de la table de gauche seront toujours renvoyées et les champs pertinents de la table de droite seront nuls. Dans Laravel, la syntaxe des jointures gauche est la suivante:
$users = DB::table('users')
->leftJoin('posts', 'users.id', '=', 'posts.user_id')
->select('users.*', 'posts.title')
->get();
Cette requête renvoie un tableau contenant des informations utilisateur et des titres d'article correspondants.
Dans les requêtes complexes, l'utilisation d'alias de table peut réduire efficacement la complexité du code et améliorer la lisibilité. Dans Laravel, vous pouvez utiliser des méthodes de type SQL pour définir un alias de table, comme indiqué ci-dessous:
$results = DB::table('users')
->join('contacts', function ($join) {
$join->on('users.id', '=', 'contacts.user_id')
->where('contacts.user_id', '>', 5);
})
->select('users.*', 'contacts.phone')
->get();
De cette façon, nous pouvons clairement représenter la relation entre plusieurs tables de la requête.
Cet article détaille comment utiliser la suppression douce, la jointure de gauche et l'alias de table à Laravel. Grâce à la suppression douce, les données peuvent être protégées contre la suppression par erreur; Les jointures gauche peuvent être combinées avec plusieurs tables pour la requête; et les alias de table facilitent les requêtes complexes à écrire et à comprendre. Ces technologies peuvent non seulement améliorer la qualité du code, mais également améliorer l'efficacité du développement.