Did you try:

db.tablename.fieldname.represent= lambda value: value if value else 'NT"

?
web2py book reference 
http://web2py.com/books/default/chapter/29/06?search=represent#Record-representation


Il giorno giovedì 25 ottobre 2012 03:20:29 UTC+2, Joe Barnhart ha scritto:
>
> I have an application where I expect "None" items in my database and I 
> want to format them to "NT".  It is an app that uses time standards, and if 
> there is no standard present I expect a "None" in the database which 
> translates to a field of "No Time" or "NT".
>
> The problem is that the current implementation of formatter in the Field 
> class tests the value for "None" and escapes before the formatter is called.
>
> I can see why this behavior might be expected in a lot of cases, but it 
> seems extreme to deny the ability to format "None" into a more pleasing 
> form for those applications that could benefit from it.  Here is the 
> offending part of formatter (located in gluon/dal.py):
>
>     def formatter(self, value):
>         requires = self.requires
>         if value is None or not requires:
>             return value
>
> If I change the above to:
>
>     def formatter(self, value):
>         requires = self.requires
>         if not requires:
>             return value
>
> I get my desired behavior, which is to pass "None" to my formatter which 
> is implemented as part of a custom Validator object.  I realize the code 
> now has to go "further" for cases where the value is None, but is it really 
> safe to assume nobody will ever want to "format" None into another string?  
> Not in my case, at least!
>
> Joe B.
>
>
>

-- 



Reply via email to