From 3ce4e2d9d690eca639467784dd4b84a64949d811 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fran=C3=A7oise=20Conil?= <francoise.conil@liris.cnrs.fr>
Date: Thu, 13 Jan 2022 17:41:37 +0100
Subject: [PATCH] =?UTF-8?q?Oubli=20de=20d=C3=A9claration=20d'une=20primary?=
 =?UTF-8?q?=5Fkey,=20ajout=20d'=C3=A9l=C3=A9ments?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 relationship/composite-foreign-key.py | 20 ++++++++++++++++++--
 1 file changed, 18 insertions(+), 2 deletions(-)

diff --git a/relationship/composite-foreign-key.py b/relationship/composite-foreign-key.py
index f86301c..33c0daf 100644
--- a/relationship/composite-foreign-key.py
+++ b/relationship/composite-foreign-key.py
@@ -44,7 +44,7 @@ class Project(Base):
 
     name = Column(Text)
     projectid = Column(Text, primary_key=True)
-    orgid = Column(Text, ForeignKey("org.orgid"))
+    orgid = Column(Text, ForeignKey("org.orgid"), primary_key=True)
 
     org = relationship("Org", back_populates="projects")
 
@@ -86,7 +86,7 @@ class Stream(Base):
     def __repr__(self):
         return (
             f"<Stream (name={self.name}, uuid={self.uuid}, "
-            f"projectid={self.projectid})>"
+            f"orgid={self.orgid}, projectid={self.projectid})>"
         )
 
 
@@ -99,19 +99,35 @@ if __name__ == "__main__":
     # cf ../basic-session.1.4.py
     with Session(engine) as session:
         o1 = Org(name="Test des clés composites")
+        o2 = Org(name="This ist ein beispiel")
 
         p1 = Project(name="Die straße")
         p1.org = o1
 
+        p2 = Project(name="Die straße")
+        p2.org = o2
+
         s1 = Stream()
         s1.name = "Il faut maintenant relier le flux au project"
         s1.project = p1
 
+        s2 = Stream()
+        s2.name = "Je manque d'inspiration"
+        s2.project = p2
+
         with session.begin():
             session.add(o1)
+            session.add(o2)
+
             session.add(p1)
+            session.add(p2)
+
             session.add(s1)
+            session.add(s2)
 
         print(o1)
+        print(o2)
         print(p1)
+        print(p2)
         print(s1)
+        print(s2)
-- 
GitLab