admin: include prefixed-varname when displaying a single page (#16979)

This commit is contained in:
Frédéric Péters 2017-06-20 19:24:25 +02:00
parent 2dada36dc0
commit 77742a8d86
2 changed files with 22 additions and 0 deletions

View File

@ -1157,6 +1157,27 @@ def test_form_edit_map_field(pub):
resp = resp.form.submit('submit')
assert 'widget-with-error' in resp.body
def test_form_limit_display_to_page(pub):
create_superuser(pub)
create_role()
FormDef.wipe()
formdef = FormDef()
formdef.name = 'form title'
formdef.fields = [fields.PageField(id='0', label='1st page', type='page'),
fields.StringField(id='1', label='string', varname='foobar'),
fields.PageField(id='2', label='2nd page', type='page'),
fields.StringField(id='3', label='string 2')]
formdef.store()
app = login(get_app(pub))
resp = app.get('/backoffice/forms/1/fields/')
assert '[form_var_foobar]' in resp.body
assert '2nd page' in resp.body
resp = resp.click('Limit display to this page', index=0)
assert '[form_var_foobar]' in resp.body
assert 'Display all pages' in resp.body
def test_form_legacy_int_id(pub):
create_superuser(pub)
create_role()

View File

@ -158,6 +158,7 @@ class FieldsPagesDirectory(Directory):
def _q_lookup(self, component):
directory = FieldsDirectory(self.parent.objectdef)
directory.field_var_prefix = self.parent.field_var_prefix
directory.html_top = self.parent.html_top
try:
directory.page_no = int(component)