Escribir en un fields.Text

14 views
Skip to first unread message

Galk G

unread,
Jul 11, 2018, 10:56:25 AM7/11/18
to tryton-es
Hola!
A ver si alguien puede ayudarme con esto:

Tengo el campo Text:
product_data = fields.Text('Product data')


Y en algun momento hago el proceso:
for product in products:
    product_list.append({
        'name': product.name,
        'value': product.value,
        # otras caracteristicas
        })

Cómo puedo hacer para guardar todos los datos del diccionario (product_list) en el campo product_data?

Probé haciendo esto, pero solo me guarda el ultimo producto, es decir que no se como actualizar o agregar una nueva linea:
for p in product_list:
    cls.write(products, {
         'product_data': '%s ------ $%s \n' % (p['name'], p['value']),
         })

Gracias! Saludos..

Sergi Almacellas Abellana

unread,
Jul 12, 2018, 3:24:22 AM7/12/18
to tryt...@googlegroups.com
El 11/07/18 a les 16:56, Galk G ha escrit:
> Hola!

Hola,

> A ver si alguien puede ayudarme con esto:
>
> Tengo el campo Text:
> *product_data = fields.Text('Product data')*
>
>
> Y en algun momento hago el proceso:
> *for product in products:*
> *    product_list.append({
>         'name': product.name,
>         'value': product.value,*
> *        # otras caracteristicas*
> *        })*
>
> Cómo puedo hacer para guardar todos los datos del diccionario
> (product_list) en el campo product_data?
>
> Probé haciendo esto, pero solo me guarda el ultimo producto, es decir
> que no se como actualizar o agregar una nueva linea:
> for p in product_list:
>     cls.write(products, {
>          'product_data': '%s ------ $%s \n' % (p['name'], p['value']),
>          })

El código parece correcto (aunque no es muy optimo hacer un write dentro
de un for). Si solo te guarda el último seguramente es porqué no estes
passando correctamente el valor del primer parámetro de la función write.

Saludos,



--
Sergi Almacellas Abellana
www.koolpi.com
Twitter: @pokoli_srk
Reply all
Reply to author
Forward
0 new messages