SqlAlchemy et Flacon, comment interroger plusieurs-à-plusieurs relations

J'ai besoin d'aide pour créer SqlAlchemy requête.

Je suis en train de faire un Flacon projet pour lequel je suis à l'aide de SqlAlchemy. J'ai créé 3 tables: Restaurant, des plats et des restaurant_dish dans mon models.py fichier.

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)

J'ai ajouté des données à la restaurant_dish table et il devrait fonctionner correctement. Où j'ai besoin d'aide c'est de comprendre comment obtenez correctement un Plat à l'aide de Restaurant. SQL brut serait quelque chose comme ceci:

SELECT dish_id FROM restaurant_dish WHERE restaurant_id == id

Ce que j'ai réussi à faire, mais ne fonctionne pas:

x = Restaurant.query.filter_by(Restaurant.restaurant_dish.contains(name)).all()

Merci pour l'aide et j'apprécie aussi les tutoriels qui peut me pointer dans la bonne direction(la documentation officielle va au-dessus de ma tête).

InformationsquelleAutor cancerballs | 2012-09-26