what if you edit a pre-existing record or if you set a default value using 
db.table.field.default instead of form.vars.field ?

On Friday, September 20, 2013 7:23:47 PM UTC+2, Joe Barnhart wrote:
>
> Hi Niphlod --
>
> This is what I thought as well.  Yet in my controller I have set this:
>
>
>     
> dbrw.birth.requires=[IS_DATE_IN_RANGE(maximum=target,format="%m-%d-%Y")]
>
>
> Still, I do not get the format mm-dd-yyyy but rather yyyy-mm-dd when the 
> form is displayed.  I have tried it with and without the enclosing list 
> and, although it will correctly read back the format I specified, it always 
> displays the form initially with the wrong date format.
>
> Here is something I just discovered that is clearly related to my 
> problem...  I am presetting values in the form vars after creating the form 
> but before displaying it. 
>
>      if presets: 
>         form.vars.update(**presets)
>
> The birth date is one of the values in the preset.  The birth date is, at 
> that moment, a Python date object and is assigned to the form.vars.birth 
> variable before calling the view.  Somehow I think this is causing the code 
> to bypass the formatter part of the IS_DATE_IN_RANGE widget.
>
> If I do not preset the field, of course, there is no incorrectly formatted 
> date in the form -- there is no date at all.
>
> -- Joe
>
> On Friday, September 20, 2013 4:11:38 AM UTC-7, Niphlod wrote:
>>
>>
>> BTW, a simple requires=IS_DATE(format='%d-%m%-%Y') works, given that no 
>> '%d-%m-%Y' is never translated.
>>
>>>
>>>

-- 
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].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to