3
假設我在sqlalchemy中有3個表。以聲明方式定義的用戶,角色和UserRoles。一個人怎麼會做這樣的事情表明:sqlalchemy關係和關係查詢
user = Users.query.get(1) # get user with id = 1
user_roles = user.roles.query.limit(10).all()
目前,如果我想獲得用戶角色我要查詢任意3個表,並執行以獲得預期結果的聯接。直接撥打user.roles
帶來了我無法過濾或限制的項目列表,因此它不是非常有用。加入事物並不是很有幫助,因爲我試圖使用其他請求創建休息界面,例如: localhost/users/1/roles
所以只需通過該查詢我需要能夠做到Users.query.get(1).roles.limit(10) etc etc
這真的應該能夠「聰明起來」我的休息界面,沒有太多臃腫的代碼,如果條件,而不必知道哪些表加入什麼。用戶模型已經具有作爲關係屬性的角色,所以爲什麼我不能像關於普通模型那樣簡單地查詢關係屬性?