簡體   English   中英

Flask SQLAlchemy 關系查詢

[英]Flask SQLAlchemy relationship query

我有兩個具有一對多關系的模型

class UserModel(db.Model):
    username = db.Column(db.String(80), unique=True)
...
    weekday = db.relationship('weekDay', backref="usermodel")

class weekDay(db.Model):
    dayname = db.Column(db.String(15))
...
    usermodel_id = db.Column(db.Integer, db.ForeignKey('usermodel.id'))

如何返回與特定用戶關聯的特定工作日。

以下查詢運行但似乎沒有返回正確的結果 -

 weekDay.query.filter(UserModel.username == 'tester').filter(weekDay.dayname=='Monday').first()

編輯:我終於學會了如何創建一個滿足我需求的工作查詢,如果其他人需要這個,我的理解如何

使用上面定義的模型,我從子節點開始查詢,並使用 select_from 和 join 語句顯式地將父節點加入到它,然后最后添加到我的自定義過濾器中以搜索我需要的內容。 這是查詢

  weekDay.query.select_from(UserModel).join(UserModel.weekday).filter(UserModel.username == "username_goes_here").filter(weekDay.dayname=="dayname_goes_here").first()

假設您有一個 id 為 5 的用戶,如果您想獲取與該用戶關聯的工作日: day=weekDay.query.filter_by(usermodel_id=5).first() day.dayname day=weekDay.query.filter_by(usermodel_id=5).first() day.dayname將為您提供與該用戶關聯的日期名稱. 如果你想擁有

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM