【发布时间】:2015-03-12 19:06:25
【问题描述】:
当我正在重建 (rebuild_index) 时,从 facets.fields 返回的字段名称开始消失,就好像它们被覆盖了一样。例如......如果 facets.fields 在第一次更新时显示 (a, b, c, d) 列表,那么它将在第二次更新时显示 (a, b, c) 并且最终列表将减半完成。
我可以在使用 facets.fields 之外生成一个值列表,但我认为这不是必需的,而且我忽略了一些简单的东西。任何帮助将不胜感激,谢谢。
schema.xml
<field name="models" type="text_en" indexed="true" stored="true" multiValued="true" termVectors="true" />
<field name="models_exact" type="string" indexed="true" stored="true" multiValued="true" termVectors="true" />
search_indexes.py
models = indexes.MultiValueField(faceted=True)
def prepare_models(self, obj):
return [g for g in obj.model.all()]
*_text.txt
{% for model in object.model.all %}
{{ model|safe }}
{% endfor %}
模板.html
{% if facets.fields.models %}
<form name="drilldown_models" action="{% url 'cmaster:search' %}" method="GET">
<span class="faceting-title">Models</span>
<select name="selected_facets">
{% for model in facets.fields.models %}
{% if model.1 > 0 %}
<option value="models_exact:{{ model.0 }}">{{ model.0 }} : {{ model.1 }}</option>
{% endif %}
{% endfor %}
</select>
{% for fac in selected_facets %}
<input type="hidden" name="selected_facets" value="{{ fac }}">
{% endfor %}
<input type="hidden" name="q" value="{{ query }}">
<input type="submit">
</form>
{% else %}
<p>No model facets.</p>
{% endif %}
tldr;在rebuild_index 期间刷新我的模板化页面会显示方面字段消失。
** 更新
列表中有几项超过 100 个。分面只会显示前 100 个结果,除非添加“限制”参数。在我的情况下,所有结果都为 'limit=-1'。
【问题讨论】: