Drkcore

28 12 2012 Python SQLAlchemy Tweet

SQLAlchemyのmany-to-manyのsecondaryにunique制約をかけたい

同じ外部キー同士の組み合わせが重複して登録されないようにしたい。Objectでチェックするよりはデータベースに任せたかったのでこんな風にしてみた。

patents_tags = db.Table('patents_tags',
     db.Column('tag_id', db.Integer, db.ForeignKey('tag.id')),
     db.Column('patent_id', db.Integer, db.ForeignKey('patent.id')),
     db.UniqueConstraint('tag_id', 'patent_id', name='tag_patent')
)

ちなみに単に複数の属性をuniqueにしたいんだったら__table_args__を使えばよろしい。

  • SQLAlchemyで複数のカラムにUnique制約をかける

ProductName Essential Sqlalchemy
Rick Copeland
Oreilly & Associates Inc / 2556円 ( 2008-06 )


About

  • もう5年目(wishlistありマス♡)
  • 最近はPythonとDeepLearning
  • 日本酒自粛中
  • ドラムンベースからミニマルまで
  • ポケモンGOゆるめ

Tag

Python Deep Learning javascript chemoinformatics Emacs sake and more...

Ad

© kzfm 2003-2021