python - 尝试按函数订购 Flask SQLAlchemy 对象
问题描述
我正在尝试构建一个具有类别、线程和帖子的 Flask 应用程序。我想按每个类别中的最新帖子对类别进行排序。
我的类别模型具有以下功能,可以正确找到最新帖子的时间戳:
def last_post_time(self):
last_time = Post.query.join(Thread,Thread.id==Post.thread_id).filter(
Thread.category_id == self.id).order_by(
Post.timestamp.desc()).first().timestamp
return last_time
要订购这个,我想运行类似的东西:
categories = Category.query.order_by(Category.last_post.desc()).paginate(
page, current_app.config['CATEGORIES_PER_PAGE'], False)
不幸的是,我认为这适用于列而不是函数的结果。
我试着按照这个来制作一个可以订购的混合属性,但我还没有运气。
老实说,我真的不知道除了在 last_post_time() 类函数上方添加一个 @hybrid_property 装饰器之外我应该做什么。
如何修改 last_post_time 函数,以便我的 order_by 查询可以处理它?
解决方案
推荐阅读
- angular - 从 json 创建动态表单时出错找不到名称为“数据”的控件
- java - 带有返回 ArrayList 的方法的 @MethodSource 的参数化 JUnit 测试
- react-native - react-native create 应用程序在创建时挂起
- javascript - 使用 fastify-multer 上传图片时出错
- python - pyqt中的切换按钮
- excel - 在 2 张纸上匹配多个标准并从 excel 中的匹配中提取一些数据
- java - 为什么 TextToSpeech synthesizeToFile 返回 -1?
- node.js - Node.js PayUMoney 集成 - response.headers.location 未定义
- angular - 访问有关图表 js 实例和组件变量的数据
- encoding - 解密http响应