SqlAlchemyクエリの作成についてサポートが必要です。
SqlAlchemyを使用しているFlaskプロジェクトを実行しています。models.pyファイルにRestaurant、Dish、restaurant_dishの3つのテーブルを作成しました。
restaurant_dish = db.Table('restaurant_dish',
db.Column('dish_id', db.Integer, db.ForeignKey('dish.id')),
db.Column('restaurant_id', db.Integer, db.ForeignKey('restaurant.id'))
)
class Restaurant(db.Model):
id = db.Column(db.Integer, primary_key = True)
name = db.Column(db.String(64), index = True)
restaurant_dish = db.relationship('Dish', secondary=restaurant_dish,
backref=db.backref('dishes', lazy='dynamic'))
class Dish(db.Model):
id = db.Column(db.Integer, primary_key = True)
name = db.Column(db.String(64), index = True)
info = db.Column(db.String(256), index = True)
Restaurants_dishテーブルにデータを追加しましたが、正しく機能しているはずです。私が助けを必要としているのは、レストランを使って料理を正しく手に入れる方法を理解することです。生のSQLは次のようになります。
SELECT dish_id FROM restaurant_dish WHERE restaurant_id == id
私がなんとか成し遂げたがうまくいかなかったこと:
x = Restaurant.query.filter_by(Restaurant.restaurant_dish.contains(name)).all()
助けてくれてありがとう、そして私を正しい方向に向けることができるチュートリアルにも感謝します(公式ドキュメントは私の頭の上にあります)。