模板pag中的SqlAlchemy查询

2024-03-28 22:23:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我有这样一个疑问:

session.query(System).filter_by(id_system = s.id_system).join(Command).filter_by(id_command=c.id_command).first()

我想在模板页面中执行此查询(我使用的是mako),但它不起作用:

^{pr2}$

在页面中进行查询的最佳方法是什么?还是不可能?在


Tags: 模板idbysessionmako页面filterquery
2条回答

模板不是执行此类操作的正确位置。所有的业务逻辑都需要根据MVC(或RV作为金字塔)范式包含到控制器中。在

在视图函数中执行查询:

results = DBSession.query(model.Articles).all()
return dict(status=True, results=results)

或者更好地创建包含常用数据库操作的模块(然后导入函数并在视图函数中调用它),然后通过

^{pr2}$

而不是在模板中使用它们:

<div>
% for r in results:
    ${r}
% endfor
</div>

我希望它能帮助你。在

虽然可以通过将会话和其他需要的函数注入到模板上下文中,但这不是正确的方法。大多数情况下,数据应该在模板之外处理,然后在呈现时传递给上下文。在

为此模板调用render的视图/函数应进行此查询并将其传递给模板。在

相关问题 更多 >