Flask SQLalchemy - доступ к атрибутам дочерних элементов - PullRequest
0 голосов
/ 26 сентября 2018

Учитывая следующие модели:

class User(db.Model):

    id = db.Column(db.Integer, primary_key=True)
    menu = db.relationship("Menu",
                    backref=db.backref('user'), 
                    uselist=True)

class Menu(db.Model):

    id = db.Column(db.Integer, primary_key=True)
    dishes = db.relationship('Dish',
                            back_populates='menu',
                            uselist=True)

class Dish(db.Model):

    id = db.Column(db.Integer, primary_key=True)
    select = db.Column(db.String(50))
    menu_id = db.Column(db.Integer, db.ForeignKey('menu.id'))
    menu = db.relationship('Menu',
                    back_populates='dishes',
                    uselist=False)

Я хотел бы получить доступ к атрибутам, используя этот синтаксис:

User.menu.dishes

, например, чтобы:

User.menu.dishes.append(pasta)

Для этого я попытался получить доступ к подчиненному элементу Dish:

query = User.query.join(User.menu,Dish).filter(Dish.select=='pasta').first()

, но это не сужает мой запрос, вместо этого он возвращает все атрибуты User...

Как правильно получить доступ к предмету с помощью моделей, указанных выше?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...