首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >访问数据库的网站模板中的代码...坏的?

问访问数据库的网站模板中的代码...坏的?
EN

Stack Overflow用户
提问于 2014-03-11 17:36:27
回答 1查看 60关注 0票数 0

我使用的是Python、Mako模板和Beaker缓存。缓存由模板内部的块控制:

代码语言:javascript
复制
<%block cached="True" cache_key="${id, day, privilege}">
...
</%block>

当我缓存涉及复杂数据库查询的内容时,我在缓存块中执行该查询,因此如果在缓存中找到该块,则不会执行该查询:

代码语言:javascript
复制
<%block cached="True" cache_key="${id, day, privilege}">
<%
data = db_interface.do_that_query()
%>
...
</%block>

对于未缓存的所有内容,我在调用模板之前查询数据,并传递数据而不是数据库句柄。在业务逻辑和模板中查询数据库感觉很混乱,但有没有更好的方法呢?

EN

回答 1

Stack Overflow用户

发布于 2014-03-11 18:02:44

在不了解您的设置的情况下:

如果您的<%block />包含有条件地确定缓存数据是否可用并发出查询的逻辑,那么初始查询(通过“业务逻辑”)肯定是多余的。

只需在没有初始查询的情况下调用模板,您就应该能够删除“业务逻辑”代码。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22321658

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档