About the class style, you should specify it:
>>> from py4web.utils.form import Form
>>> from pydal import Field
DEFAULT STYLE
>>> f = Form([Field('a','text'), Field('b','string')])
>>> print(f.xml())
<form method="POST" action="/" enctype="multipart/form-data"><div
class=""><label for="none_a" class="">A</label><div class=""><textarea
id="none_a" name="a" class=""></textarea></div><p class=""></p></div><div
class=""><label for="none_b" class="">B</label><div class=""><input
type="text" id="none_b" name="b" class=""/></div><p class=""></p></div><div
class=""><div class=""><input type="submit"
value="Submit"/></div></div><input type="hidden" name="_formkey"
value="none"/></form>
BULMA STYLE
>>> from py4web.utils.form import FormStyleBulma
>>> f = Form([Field('a','text'), Field('b','string')],
formstyle=FormStyleBulma)
>>> print(f.xml())
<form method="POST" action="/" enctype="multipart/form-data"><div
class="field"><label for="none_a" class="label">A</label><div
class="control"><textarea id="none_a" name="a"
class="textarea"></textarea></div><p class="help"></p></div><div
class="field"><label for="none_b" class="label">B</label><div
class="control"><input type="text" id="none_b" name="b"
class="input"/></div><p class="help"></p></div><div class="field"><div
class="control"><input type="submit" value="Submit"
class="button"/></div></div><input type="hidden" name="_formkey"
value="none"/></form>
On Monday, 30 December 2019 19:30:29 UTC+1, JSalvat wrote:
>
> Some testing done, I don't know the side efects, but with this changes to
> py4web/utils/*form.py* things work munch better (as per
> date/time/password widgets):
>
> ....
> elif field.type == "text":
> *# *control = TEXTAREA(value or "", _id=input_id, _name=
> field.name) <--- MODIFIED
> control = TEXTAREA(value or "", _id=input_id, _name=field.name
> , _class="textarea")
> ....
> ....
> else:
> # field_type = "password" if field.type == "password" else
> "text" <--- MODIFIED
> field_type = "text" if (field.type == "string" or field.type
> == "") else field.type
> control = INPUT(
> _type=field_type,
> _id=input_id,
> _name=field.name,
> _value=value,
> # _class=field_class, <--- MODIFIED
> _class="input",
> )
>
> # key = control.name.rstrip("/") <--- BLOCK 4 LINES UNUSED
> # if key == "input":
> # key += "[type=%s]" % (control["_type"] or "text")
> # control["_class"] = classes.get(key, "")
>
>
> Also, in Grid *create*: Boolean widget does not show selected state.
> in Grid *modify*: If a field is modified and click on "Close"
> instead of "Save", changes are saved !
>
> I'm using this table on Form / Grid tests:
>
> db.define_table(
> 'sam_table',
> Field('samString', type='string', length=10, unique=True, required=
> True,
> requires = [IS_LENGTH(10, 4), IS_SLUG(maxlen=10,
> check=True, error_message='Only alphanumeric characters and
> non-repeated dashes.')],
> comment='Unique identifier.'),
> Field('samText', type='text', comment='Enter a description text.'),
> Field('samBool', type='boolean', default=False, comment='Are you
> interested in py4web ?'),
> Field('samDate', type='date', required=True,
> requires = [IS_NOT_EMPTY(), IS_DATE()],
> comment='Enter a valid sample date.'),
> Field('samTime', type='time',
> requires = IS_TIME(), comment='Enter a valid sample time.'),
> Field('samInteger', type='integer', default=0,
> requires = IS_INT_IN_RANGE(0, 9999, error_message='Must be
> integer between 0 and 9999.'),
> comment='Enter a valid sample integer.'),
> Field('samDecimal', type='decimal(4,2)', default=0.0,
> requires = IS_DECIMAL_IN_RANGE(0, 35.0, dot=','),
> comment='Enter a sample decimal between 0 and 35.'),
> )
>
>
>
--
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
---
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/web2py/4aac031d-f368-4e64-bbb7-76fd8c70c7b0%40googlegroups.com.