Exemple : une page de détails de publication
page de détails hasMany association Tableau des commentaires
评论表
评论表
hasOne关联 用户表
用户表
hasOne关联 用户数据表
Tableau des commentaires
hasOne association
用户表
hasOne association Tableau des données utilisateur
Ensuite, la liste des commentaires peut être interrogée via l'association with('author')用户表
关联查询用户数据表
, évitant ainsi les requêtes N+1
Mais à l'heure actuelle, lors de l'interrogation de la table de données utilisateur
via 用户表
,也关联了用户数据表
association, il s'agit toujours de requêtes N+1.
Table de données utilisateur
en une seule fois avec ? 🎜
Commentaire utilisateur associé : getAuthor
Données utilisateur associées à l'utilisateur : getAuthornname
Peut être récupéré avec ('author.authorname').
Si vous voulez voir un exemple, ce chapitre vidéo parle simplement de la récupération de données à partir d'associations multicouches.
Je n'ai pas utilisé yii2 depuis longtemps. Lorsque j'utilisais ActiveRecord auparavant, j'écrivais directement du SQL pour gérer des instructions complexes. J'étais trop paresseux pour modifier le fichier de modèle ici et là, tant que vous y réfléchissez. les performances sont bonnes, l'association LEFT JOIN suffit, utilisez findBySQL() pour vérifier.