SQLFORM.factory hidden fields are not working the same in 1.99.3 as in
1.99.2. Here is a simple example
form = SQLFORM.factory(
Field('text_field'),
Field('hidden_field', type='hidden', default='test'),)
The hidden field is not hidden. Here is the html produced. The first is
from 1.99.2, the second 1.99.3.
<input id="no_table_hidden_field" class="hidden" type="text" value="test"
name="hidden_field" style="display: none;">
<input id="no_table_hidden_field" class="string" type="text" value="test"
name="hidden_field">
If I use readable=False, writable=False, the field is hidden from the
display but then no input is created for it. I have javascript code
accessing the hidden input value. I can probably work around the problem
using this syntax.
form = SQLFORM.factory(
Field('text_field'),
hidden={'hidden_field': 'test'})
However, the input produced has no id or class attribute which I was using.
<input value="test" name="hidden_field" type="hidden">
Is what I'm seeing a bug or was the Field(... type='hidden'...) syntax
never intended to work?