Ich bin derzeit in einer Situation wie die Suche folgender -SQLAlchemy Beziehung ohne Stub-Klasse
user_association = Table('user_association', Base.metadata,
Column('user_id', UUIDType, ForeignKey('user.id')),
Column('personality_id', UUIDType, ForeignKey('personality.id'))
)
class User(Base, DBBase):
__tablename__ = 'user'
id = Column(Integer, primary_key = True)
name = Column(String), nullable = True)
personalities = relationship(
"Personality",
secondary=user_association,
back_populates="users"
)
class Personality(Base, DBBase):
__tablename__ = 'personality'
id = Column(Integer, primary_key = True)
value = Column(String, nullable = True)
users = relationship(
"User",
secondary=user_association,
back_populates="personalities"
)
Das Personality
Objekt hat nur einen Wert (und diese Werte sind hartcodiert in die Code-Basis, im Gegensatz zu typischen Objekten) . Ich frage mich, ob es eine Möglichkeit gibt, dasselbe Beziehungsverhalten ohne eine explizite Stub-Tabelle zu erreichen, die die Persönlichkeit kapselt. Irgendwelche Ideen?
nicht klar, mit was wollen Sie erreichen, ersetzen 'Personality' Tabelle mit einem python dict? Wie viele Datensätze in dieser Tabelle? – georgexsh
@georgexsh Idealerweise möchte ich den "Benutzer" mit mehreren Persönlichkeitsstrings verbinden, während das eingebaute Verhalten von sqlalchemy beibehalten wird (wie das Hinzufügen neuer Werte mit .append). –
@p-freeman wie viele * einzigartige * Werte von Persönlichkeiten dann? – georgexsh