2 人の関係を定義し、それを SQLAlchemy で照会する最良の方法を探しています。私はこれについて頭を包むのに苦労しています。これが私がこれまでに持っているものですが、このようなリンクテーブルとしてモデルを使用する必要があるかどうかはわかりません. アドバイス?
例character_a
= student
character_b
=teacher
または[[relationship.character_b, relationship.character_b.role] for relationship in character.relationships]
、関連するキャラクターとその役割のリストを取得します。
class Character(db.Model):
__tablename__ = 'characters'
story_id = db.Column(db.String, db.ForeignKey('stories.id'))
id = db.Column(db.Integer(), primary_key=True)
name = db.Column(db.String(50))
gender = db.Column(db.String(6))
description = db.Column(db.Text())
relationships = db.relationship('Relationship', backref='character', lazy='dynamic')
class Relationship(db.Model):
__tablename__ = 'relationships'
character_a_id = db.Column(db.String, db.ForeignKey('characters.id'))
character_b_id = db.Column(db.String, db.ForeignKey('characters.id'))
character_a_role = db.Column(db.String(25))
character_b_role = db.Column(db.String(25))