if you need a cutsom widget with a custom format, and you already rewrote the widget, why don't you rewrite also the validator ?!
On Wednesday, June 24, 2015 at 10:00:46 AM UTC+2, Annet wrote: > > I wrote a widget to format time: > > def timeplain(field, value): > if value == None: > value = '' > elif 'strftime' in dir(value): > value = value.strftime('%H:%M') > id = '%s_%s' % (field._tablename, field.name) > return INPUT(_type='text', _id=id, _class='form-control time_plain', > _name=field.name, value=str(value), requires=field.requires) > > and on the fileds of type time I have the following attributes: > > istime = dict(type='time', requires=IS_TIME(error_message='Formaat komt > niet overeen met HH:MM'), widget=timeplain) > > > This works fine unless the form contains an error on the field of type > time, for example I have the following validation function: > > def __onvalidation_openinghours(form): > if form.vars.startTime > form.vars.endTime: > form.errors.endTime = 'De eind tijd is vroeger dan de start tijd' > > In this case the endTime is displayed in the format HH:MM:SS > The issue can be fixed by adding: > > form.vars.endTime = form.vars.endTime.strftime('%H:%M') > > after form.errors.endTime, however, I wonder whether there is a way to > adjust the timeplain function to solve the issue. > > > Kind regards, > > Annet > > > > -- 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 web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.