Materia_Prima.pedido_id.requires = IS_IN_DB(db(Pedido), 'pedido.id',
lambda r: '%s - referencia: %s'
% (r.produto_id.cliente_nome,
r.ordem_de_servico))
Note, r.produto_id.cliente_nome is a recursive select (it will result in an
additional database query for each item in the dropdown list).
Also, why isn't pedido_id a reference field?
Note, you can avoid manually specifying the IS_IN_DB validators if you
instead make all of the relevant fields reference fields and then specify
the "format" argument of the two referenced tables (i.e., the "label"
arguments you are using in the IS_IN_DB validators can instead be specified
as the "format" arguments in the definitions of the respective referenced
tables). In that case, web2py will automatically define the IS_IN_DB
validators for you.
Anthony
On Wednesday, June 20, 2018 at 10:40:18 AM UTC-4, Diego Tostes wrote:
>
> I have those tables:
>
> *Produto = db.define_table('produto',*
> * Field('ficha_tecnica', 'upload', label=T("Ficha Tecnica")),*
> * Field('cliente_id', 'integer', label=T("Cliente ID")),*
> * Field('cliente_nome', 'string', label=T("Nome Cliente"))*
> *)*
>
> *Pedido = db.define_table('pedido',*
> * Field('produto_id', db.produto),*
> * Field('ordem_de_servico', 'string', label=T("Ordem de Servico")),*
> * Field('tipo_de_pedido', 'integer', label=T("Tipo de Pedido"))*
> *)*
>
> *Materia_Prima = db.define_table('materia_prima',*
> * Field('pedido_id', 'integer', label=T("ID DO PEDIDO")),*
> * Field('data_recebimento', 'date', label=T("Data Recebimento")),*
> *)*
>
> *#requires*
> *Pedido.produto_id.requires = IS_IN_DB(db(Produto), 'produto.id
> <http://produto.id>', '%(cliente_nome)s - referencia: %(referencia)s')*
> *Materia_Prima.pedido_id.requires = IS_IN_DB(db(Pedido), 'pedido.id
> <http://pedido.id>', )*
>
>
> I need that the field Materia_Prima.pedido_id, persist the pedido_id but
> when i select in the dropdow of a SQLFORM the information is:
>
>
> *'%(cliente_nome)s - referencia: %(ordem_de_servico)s' *
>
> but the field *cliente_nome* is a filed from *Produto*.
>
> is it Possible?
>
>
> Rgds
>
> Diego
>
>
>
--
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/d/optout.