Thanks, perfect, that was just what I was looking for!

Is that in the book or the docs somewhere?


On Thursday, October 16, 2014 8:29:37 PM UTC+2, Anthony wrote:
>
> You can pass the format as the third argument to the validator:
>
> IS_IN_DB(db(db.gang_users.gang == gang.id), db.gang_users.nickname, db.
> gang_users._format)
>
> Anthony
>
> On Thursday, October 16, 2014 2:02:02 PM UTC-4, Álvaro José Iradier wrote:
>>
>> Hi, I have a field in table 'expenses' defined as:
>> db.define_table('expenses',
>>                 Field('gang', db.gangs, required=True, notnull=True),
>>                 ...
>>                 Field('payer', db.gang_users, label=T('Payer')),
>>                 ...
>>
>> Table gang_users has a format like:
>>
>> db.define_table('gang_users',
>>                 Field('gang', db.gangs, required=True, notnull=True),
>>                 Field('auth_user', db.auth_user, required=True, 
>> notnull=True),
>>                 Field('nickname', 'string', required=False, 
>> notnull=False),
>>                 format = lambda r: "%s (%s)" % (r.auth_user.email, 
>> r.nickname) if r.nickname else r.auth_user.email
>> )
>>
>> When the "payer" field is shown in a SQLFORM, it will display a dropdown 
>> with the list of users from the table gang_users, formatted according to 
>> the "auth.user.email (nickname)" rule defined in the format parameter of 
>> gang_users table.
>>
>> However, I want to filter out this users, by doing in the controller:
>>
>> db.expenses.payer.requires = IS_IN_DB(db(db.gang_users.gang == gang.id), 
>> db.gang_users.nickname)
>>
>> When the validator is set, only users from the given gang are displayed 
>> in the dropdown, but I can display the nickname or id or any column from 
>> the gang_users table. I would like to keep the "auth_users.email 
>> (gang_users.nickname)" format as without the validator.
>>
>> Is it possible?
>>
>> Thanks very much.
>>
>> -- 
>> (:=================================:)
>>  Alvaro J. Iradier Muro - aira...@gmail.com <javascript:> 
>>
>

-- 
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.

Reply via email to