【问题标题】:SQL alchemy basequery object contains multiple classes - how do I paginate the results/convert to one single table?SQL alchemy basequery 对象包含多个类 - 如何对结果进行分页/转换为一个表?
【发布时间】:2018-06-28 16:59:37
【问题描述】:

在一个学习单词的应用中,我有两个类,UserWord,第三个类UserWordList,代表两个类之间的关系。

class UserWordList(db.Model):
   id = db.Column(db.Integer, primary_key=True)
   user_id = db.Column(db.Integer, db.ForeignKey('user.id'))
   word_id = db.Column(db.Integer, db.ForeignKey('word.id'))

我在User 类中包含了一个属性来显示当前正在研究的单词列表:

words_learned_list = (db.session.query(Word,UserWordList)
    .filter(Word.id == UserWordList.word_id)
    .filter(UserWordList.user_id == id))

这一切都很好,但是我想使用 paginate 为用户打印单词列表,words_learned_list 由类实例的元组组成,这些实例是不可打印的。有没有办法将此列表转换为一个表?

【问题讨论】:

    标签: python sql pagination flask-sqlalchemy


    【解决方案1】:

    你不能在数据库中创建一个视图,然后在 python 中为这两个创建一个类

    【讨论】:

    • 我这样做的原因是 UserWordList 将包含我在这里没有包含的额外方法。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-01-17
    • 2023-01-08
    • 1970-01-01
    • 2011-03-24
    • 2023-03-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多