Folgendes, ich habe ein table für Artikel und einen für Bestellungen ich würde gerne eine relation haben die mir nach der Bestellung die Details zu den Artikeln rausgibt.
Die tables sehen wie folgt aus:
Code: Alles auswählen
class Artikel(Base):
__tablename__ = 'artikel'
data_id = db.Column(db.Integer, primary_key = True)
art_nr = db.Column(db.String(20))
art_size = db.Column(db.String(20))
art_name = db.Column(db.String(20))
art_group= db.Column(db.String(20))
art_description = db.Column(db.String(20))
class Orders(Base):
__tablename__ = 'orders'
data_id = db.Column(db.Integer, primary_key = True)
order_nr = db.Column(db.String(20))
art_nr = db.Column(db.String(20))
art_size = db.Column(db.String(20))
also bsp:
order art_nr art_size
123 456 20
123 456 21
123 789 19
458 100 10
So z.B. im Artikel table hab ich für jede Artikelvariante einen Eintrag, also ist die richtige Variante hier many to one, weil es mehrere Artikel pro Order geben kann aber jeder Artikel nur 1x in der Artikel table existiert?
Muss ich mir hierfür jetzt so etwas wie ein extra table erstellen und muss ich diesen nur beschreiben oder muss der wirklich in der Datenbank existieren?
Oder gibts da ne bessere Herangehensweise?
Wenn ich es richtig verstanden haben müsste es ungefähr so aussehen oder?
Code: Alles auswählen
class Orders(Base):
__tablename__ = 'orders'
data_id = db.Column(db.Integer, primary_key = True)
order_nr = db.Column(db.String(20))
art_nr = db.Column(db.String(20))
art_size = db.Column(db.String(20))
artikel_id = Column(Integer, ForeignKey('artikel.data_id'))
orders = relationship("Orders", backref="Artikel")
Wirklich verstehen tu ich das ganze allerdings nicht, daher hoffe ich hier etwas "Erleuchtung" zu finden?