Code: Alles auswählen
class Product(db.Model):
__tablename__ = 'product'
id = db.Column(db.Integer, primary_key=True)
item_id = db.Column(db.String(100), unique=True)
...
type = db.Column(db.String(50))
__mapper_args__ = {
'polymorphic_on': "type"
}
Code: Alles auswählen
class Lamp(Product):
__tablename__ = 'lamp'
id = db.Column(db.Integer, ForeignKey(Product.id), primary_key=True)
...
---neu---
light_source = db.relationship("LightSource", uselist=False, back_populates="lamp")
---neu---
__mapper_args__ = {
'polymorphic_identity': 'lamp'
}
Code: Alles auswählen
class LightSource(db.Model):
__tablename__ = 'light_source'
id = db.Column(db.Integer, ForeignKey(Lamp.id), primary_key=True)
lamp = relationship("Lamp", uselist=False, back_populates="light_source")
...
data = db.Column(db.String(40)
Code: Alles auswählen
new_lamp = Lamp(item_id='blub')
new_light_source = LightSource(data='blabla')
new_lamp.light_source = new_light_source
Code: Alles auswählen
sqlalchemy.exc.IntegrityError: (psycopg2.errors.NotNullViolation) null value in column "id" violates not-null constraint
Kann mir vielleicht jemand sagen WO ich hier den Fehler mache?
Danke