Holaaa
Tengo un problema al intentar actualizar un tabla,a ver si me podeis ayudar que me esta volviendo locooo jaja
Tengo esta tabla con el comando compute en una field:
Introducir código db.define_table('Modulos',
Field('imagen','upload'),
Field('descripcion','string'),
Field('Costo'))
from Funciones import CalcularCostos
db.Modulos.Costo.compute = lambda row: CalcularCostos(row.descripcion)
Tengo el modulo Funciones:
# -*- coding: utf-8 -*-
def CalcularCostos (NombreModulo=1):
## Modulos=db().select(db.Modulos.Descripcion==NombreModulo)
return NombreModulo
Y en el Controlador de la vista tengo esto...
def Presupuesto():
db(db.Modulos.id > 0).update()
prueba=db().select(db.Modulos.ALL)
return dict(prueba=prueba)
Me salta este error:
<type 'exceptions.SyntaxError'> No fields to update
Versión
web2py™ | Version 2.9.11-stable+timestamp.2014.09.15.23.35.11 |
---|
Python | Python 2.7.6: C:\web2py\web2py.exe (prefix: C:\Python27) |
---|
Rastreo
1. 2. 3. 4. 5. 6. 7. 8. 9. | Traceback (most recent call last): File "gluon/restricted.py", line 224, in restricted File "C:/web2py/applications/PresentiMobiliario/controllers/default.py", line 113, in <module> File "gluon/globals.py", line 392, in <lambda> File "C:/web2py/applications/PresentiMobiliario/controllers/default.py", line 59, in Presupuesto db(db.Modulos.id > 0).update() File "gluon/dal.py", line 10772, in update SyntaxError: No fields to update |
Si en vez de pasarle a la funcion compute esto:
db.Modulos.Costo.compute = lambda row: CalcularCostos(row.descripcion)
le paso esto:
db.Modulos.Costo.compute = lambda row: CalcularCostos(5)
No me da el error
Muchas gracias!!!!