Python 如何在Union peewee orm中对SQL结果进行排序

Python 如何在Union peewee orm中对SQL结果进行排序,python,mysql,python-2.7,peewee,Python,Mysql,Python 2.7,Peewee,我使用peewee ORM连接到MySQL服务器 我写了这段代码: c = ( Comments().select( Comments, Member.id.alias('member_id'), Member.username, Member.name, Member.family, Member.image_name ).join( Users, on=(Comments.user_key == Users.user_key) ).jo

我使用peewee ORM连接到MySQL服务器

我写了这段代码:

c = (
    Comments().select(
        Comments, Member.id.alias('member_id'), Member.username, Member.name, Member.family, Member.image_name
    ).join(
        Users, on=(Comments.user_key == Users.user_key)
    ).join(
        Member, on=(Member.username == Users.username).alias('member')
    ).where(
        Comments.element_key == element_key, Comments.status << [
            Comments().EnumStatus.ACCEPT, Comments().EnumStatus.REPORT
        ]
    )
    |
    Comments().select(
        Comments, Admin_users.id.alias('member_id'), Admin_users.username, Admin_users.name,
        Admin_users.family, Admin_users.image_name
    ).join(
        Users, on=(Comments.user_key == Users.user_key)
    ).join(
        Admin_users, on=(Admin_users.username == Users.username).alias('member')
    ).where(
        Comments.element_key == element_key, Comments.status << [
            Comments().EnumStatus.ACCEPT, Comments().EnumStatus.REPORT
        ]
    )
).order_by(Comments.date_submit).paginate(page, count)
print(c.sql)
c = c.execute()
错误是:

(1054, "Unknown column 't1.date_submit' in 'order clause'")
如何重新排序此查询?

您可以尝试以下操作:

comments_query = (
    Comment.select(blah blah blah)
    |
    Comment.select(yadda yadda yadda)
)
ordered_query = comments_query.order_by(comments_query.c.date_submit)

我使用此代码及其工作原理:

... ).order_by(SQL('date_submit')). ...

谢谢@coleifer!在
comments\u query.c.date\u submit
什么是
c
?你能解释一下吗?
... ).order_by(SQL('date_submit')). ...