J'ai une relation polymorphique de plusieurs-à-plusieurs entre mes projets et les tables (membres, équipes). Fondamentalement, un membre ou une équipe peut être affecté à un projet. Et les membres sont regroupés en équipes. .Requête brute à Eloquent
Je veux sélectionner les projets qui sont affectés à l'équipe que membre actuel est que je peux obtenir par requête brute comme ceci:
DB::select(
DB::raw('
SELECT DISTINT project_id FROM projectvisibles PV
WHERE PV.projectvisible_type = "Team"
AND PV.projectvisible_id IN (
SELECT team_id FROM member_team
WHERE member_id = :id)
'), ['id' => $id]
);
Comment puis-je écrire cette requête sous forme brute Eloquent?
Mon DB:
Table Projets:
id,
project_id,
Nom
Membres Tableau:
id,
nom
équipes Tableau:
id,
nom
Member_Team Tableau:(membres peuvent être regroupés sous des équipes , via cette table)
member_id,
team_id
ProjectVisibles Tableau: (projets peuvent être attribués à des membres ou des équipes via ce tableau (polymorphique many-to-many)
project_id,
projectvisible e_id (id membre ou l'équipe id),
projectvisible_type (membre ou équipe)
Regardez ce http://stackoverflow.com/ questions/16815551/comment-faire-cela-dans-laravel-sous-requête-où-dans –