me propuse a aprender algo de base de datos con python (antes había usado flask con sqlalchemy), la cosa es que quiero actualizar un elemento de la base de datos, con flask y sqlalchemy era simple solo actualizabas una clase y hacías el commit pero sin flask es mas complejo al parecer (no estoy seguro) se usa una función update()
, En resumen busco saber como usar la funcion update()
para editar el elemento, les dejo mi codigo
def AddProduc():
producto = Producto()
print ("\t\t .: Agregar Producto :. ")
producto.product_id = raw_input("\t ID del producto ( codigo de barras ): ")
Exist_Product = session.query( Producto ).filter_by( product_id = producto.product_id ).first()
# AGREGAR O ACTUALIZAR
if Exist_Product == None:
producto.nombre = raw_input("\t Nombre del producto: ")
producto.precio = input("\t Precio del producto: ")
producto.cantidad = input("\t Cuantos productos va a agregar: ")
session.add( producto )
session.commit()
else:
Cantidad_Nuevo = input("\t Cuantos productos va a sumar: ")
Cantidad_Nuevo = Cantidad_Nuevo + Exist_Product.cantidad
# Lo que esta adentro de update() es el nombre de la tabla no la clase
session.update( producto ).values( cantidad = Cantidad_Nuevo ).where()
La tabla esta declarada asi:
class Producto( db ):
__tablename__ = "producto"
product_id = Column( Integer(),primary_key = True )
precio = Column( Integer())
cantidad = Column( Integer())
nombre = Column( String(50))
Gracias de antemano <3