如何在Zotonic模板中循环搜索过去的项目?

时间:2010-10-22 16:12:59

标签: templates search zotonic

我希望能够在模板中循环过去的事件:

{% for page in m.search[{past cat='event'}] %}
    {% if forloop.first %}<ul>{% endif %}
        <h2>{{ m.rsc[page].date_start|date:"M j, Y" }} {{ m.rsc[page].title }}</h2>
        <p>{{ m.rsc[page].body|show_media }}</p>
        <p><a href="{{ m.rsc[page].website }}">Register to attend this event.</a></p>
    {% if forloop.last %}</ul>{% endif %}
{% endfor %}

基本上我正在寻找过去搜索类型,该搜索类型与即将推出的搜索类型相反。

我已经可以按照以下方式获得即将发生的事件:

{% for page in m.search[{upcoming cat='event'}] %}
    {% if forloop.first %}<ul>{% endif %}
        <h2>{{ m.rsc[page].date_start|date:"M j, Y" }} {{ m.rsc[page].title }}</h2>
        <p>{{ m.rsc[page].body|show_media }}</p>
        <p><a href="{{ m.rsc[page].website }}">Register to attend this event.</a></p>
    {% if forloop.last %}</ul>{% endif %}
{% endfor %}

如果我指向正确的方向,我没有任何疑问编码,我会将结果反馈给主代码库。

如何在Zotonic模板中循环搜索过去的项目?

1 个答案:

答案 0 :(得分:1)

您可以使用查询搜索模型的date_start_before术语,这显然是未记录的,但我确实发现它在search_query.erl中查找源代码(第293行)。

虽然我认为你的查询应该检查pivot_date_end而不是pivot_date_start。

为了使这个更容易访问,你可以在mod_search.erl模块中添加一个处理程序(很像upcoming),最后也修改

mod_search模块实现了大多数搜索。

另见http://zotonic.com/documentation/761/the-query-search-model

欢迎补丁: - )