misc: do not index cells in technical placeholders (#22658)

This commit is contained in:
Frédéric Péters 2018-03-21 10:10:44 +01:00
parent 409d12933c
commit 76c2fec23e
2 changed files with 15 additions and 1 deletions

View File

@ -1,5 +1,7 @@
{% autoescape off %}
{% for cell in object.get_cells %}
{{ cell.render_for_search }}
{% if cell.placeholder|first != '_' %} {# ignore technical placeholders #}
{{ cell.render_for_search }}
{% endif %}
{% endfor %}
{% endautoescape %}

View File

@ -189,6 +189,18 @@ def test_search_contents_index():
prepared_data = page_index.prepare(page)
assert 'foobar' in prepared_data['text']
def test_search_contents_technical_placeholder():
page = Page(title='example page', slug='example-page')
page.save()
TextCell(page=page, text='<p>foobar</p>', order=0, placeholder='_off').save()
TextCell(page=page, text='<p>barfoo</p>', order=0, placeholder='on').save()
page_index = PageIndex()
prepared_data = page_index.prepare(page)
assert 'barfoo' in prepared_data['text']
assert not 'foobar' in prepared_data['text']
def test_search_api(app):
page = Page(title='example page', slug='example-page')
page.save()