本文整理汇总了Python中is2sap.model.DBSession.query方法的典型用法代码示例。如果您正苦于以下问题:Python DBSession.query方法的具体用法?Python DBSession.query怎么用?Python DBSession.query使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类is2sap.model.DBSession
的用法示例。
在下文中一共展示了DBSession.query方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: listadoItemsParaAsignaraLineaBase
# 需要导入模块: from is2sap.model import DBSession [as 别名]
# 或者: from is2sap.model.DBSession import query [as 别名]
def listadoItemsParaAsignaraLineaBase(self, id_proyecto, id_fase, id_linea_base, page=1):
"""Metodo para listar todos los items a asignar a la linea base"""
lineabase=DBSession.query(LineaBase).get(id_linea_base)
if lineabase.estado=='Aprobado':
flash(_("La Linea Base ya se encuentra aprobada"), 'warning')
redirect("/admin/linea_base/listado_linea_bases",id_proyecto=id_proyecto, id_fase=id_fase)
linea_bases=DBSession.query(LineaBase).filter_by(id_fase=id_fase)
itemsenLineaBase = []
for linea_base in linea_bases:
itemsLineaBase = linea_base.items
for itemLineaBase in itemsLineaBase:
itemsenLineaBase.append(itemLineaBase)
#items Contiene todos los items que se encuentran en la fase actual
tipo_items=DBSession.query(TipoItem).filter_by(id_fase=id_fase)
itemsDeFaseActual = []
for tipo_item in tipo_items:
itemsTipoItem = DBSession.query(Item).filter_by(id_tipo_item=tipo_item.id_tipo_item).filter_by(vivo=True).filter_by(estado='Aprobado').order_by(Item.id_item)
for itemTipoItem in itemsTipoItem:
itemsDeFaseActual.append(itemTipoItem)
items=itemsDeFaseActual
if itemsenLineaBase != None:
for item in itemsenLineaBase:
if items.count(item) >= 1:
items.remove(item)
currentPage = paginate.Page(items, page)
return dict(items=currentPage.items, page='listadoItemsParaAsignaraLineaBase', id_proyecto=id_proyecto,
id_fase=id_fase, id_linea_base=id_linea_base, currentPage=currentPage)
示例2: eliminar_rol_permiso
# 需要导入模块: from is2sap.model import DBSession [as 别名]
# 或者: from is2sap.model.DBSession import query [as 别名]
def eliminar_rol_permiso(self, id_rol, id_permiso, **kw):
"""Metodo que elimina un permiso al rol seleccionado"""
try:
permiso = DBSession.query(Permiso).get(id_permiso)
rol = DBSession.query(Rol).get(id_rol)
if permiso.roles.count(rol) >= 1:
permiso.roles.remove(rol)
DBSession.flush()
transaction.commit()
except IntegrityError:
transaction.abort()
flash(_("No se pudo desasignar el Permiso! Hay Problemas con el servidor..."), 'error')
redirect("/admin/rol/permisos", id_rol=id_rol)
except SQLAlchemyError:
flash(_("No se pudo desasignar el Permiso! SQLAlchemyError..."), 'error')
redirect("/admin/rol/permisos", id_rol=id_rol)
except (AttributeError, NameError):
flash(_("No se pudo desasignar el Permiso! Hay Problemas con el servidor..."), 'error')
redirect("/admin/rol/permisos", id_rol=id_rol)
except (ValueError):
redirect("/admin/rol/permisos", id_rol=id_rol)
else:
flash(_("Permiso desasignado!"), 'ok')
redirect("/admin/rol/permisos", id_rol=id_rol)
示例3: iniciar
# 需要导入模块: from is2sap.model import DBSession [as 别名]
# 或者: from is2sap.model.DBSession import query [as 别名]
def iniciar(self, id_proyecto, **kw):
"""Metodo que da inicio a un proyecto"""
try:
proyecto = DBSession.query(Proyecto).get(id_proyecto)
fases = proyecto.fases
id_proyecto = proyecto.id_proyecto
maxnumerofase = DBSession.query(func.max(Fase.numero_fase)).filter_by(id_proyecto=id_proyecto).first()
if maxnumerofase[0]==None:
flash(_("El Proyecto se encuentra sin fases! No puede iniciar..."), 'error')
redirect("/admin/proyecto/listaProyectos_a_iniciar")
else:
proyecto.iniciado = True
for fase in fases:
if fase.numero_fase == 1:
fase.id_estado_fase = '2'
DBSession.flush()
transaction.commit()
except IntegrityError:
transaction.abort()
flash(_("No se ha realizado la inicializacion! Hay Problemas con el servidor..."), 'error')
redirect("/admin/proyecto/listaProyectos_a_iniciar")
except SQLAlchemyError:
flash(_("No se ha realizado la inicializacion! SQLAlchemyError..."), 'error')
redirect("/admin/proyecto/listaProyectos_a_iniciar")
except (AttributeError, NameError):
flash(_("No se ha realizado la inicializacion! Hay Problemas con el servidor..."), 'error')
redirect("/admin/proyecto/listaProyectos_a_iniciar")
else:
flash(_("Proyecto iniciado!"), 'ok')
redirect("/admin/proyecto/listaProyectos_a_iniciar")
示例4: listadoPermisoFase
# 需要导入模块: from is2sap.model import DBSession [as 别名]
# 或者: from is2sap.model.DBSession import query [as 别名]
def listadoPermisoFase(self, id_usuario, id_rol, id_proyecto, page=1):
"""Metodo que permite listar los roles que se pueden agregar al usuario seleccionado"""
try:
roles = DBSession.query(Rol).get(id_rol)
rolesFases = roles.fases
rolesFases1 = roles.fases
proyecto = DBSession.query(Proyecto).get(id_proyecto)
listaFases =[]
for fase in rolesFases:
if proyecto.fases.count(fase) == 0:
rolesFases.remove(fase)
for fase in proyecto.fases:
if rolesFases1.count(fase) == 0:
listaFases.append(fase)
currentPage = paginate.Page(rolesFases, page, items_per_page=10)
except SQLAlchemyError:
flash(_("No se pudo acceder a Listado Fases! SQLAlchemyError..."), 'error')
redirect("/admin/proyecto/rolesProyectoUsuario", id_proyecto=id_proyecto, id_usuario=id_usuario)
except (AttributeError, NameError):
flash(_("No se pudo acceder a Agregar Roles! Hay Problemas con el servidor..."), 'error')
redirect("/admin/proyecto/rolesProyectoUsuario", id_proyecto=id_proyecto, id_usuario=id_usuario)
return dict(rolesFases=currentPage.items, page='agregar_roles', currentPage=currentPage,
id_usuario=id_usuario, id_proyecto=id_proyecto, fasesRestantes=listaFases, id_rol=id_rol)
示例5: nuevoDesdeProyecto
# 需要导入模块: from is2sap.model import DBSession [as 别名]
# 或者: from is2sap.model.DBSession import query [as 别名]
def nuevoDesdeProyecto(self, id_proyecto, **kw):
"""Despliega el formulario para añadir una fase al proyecto."""
try:
tmpl_context.form = crear_fase_form
proyecto = DBSession.query(Proyecto).get(id_proyecto)
if proyecto.iniciado == True:
flash(_("Proyecto ya iniciado. No puede crear fases!"), 'error')
redirect("/admin/fase/listadoFasesPorProyecto", id_proyecto=id_proyecto)
maxnumerofase = DBSession.query(func.max(Fase.numero_fase)).filter_by(id_proyecto=id_proyecto).first()
kw['id_proyecto']=id_proyecto
kw['id_estado_fase']=1
if maxnumerofase[0]==None:
kw['numero_fase']=1
else:
kw['numero_fase']=maxnumerofase[0] + 1
except SQLAlchemyError:
flash(_("No se pudo acceder a Creacion de Fases! SQLAlchemyError..."), 'error')
redirect("/admin/fase/listadoFasesPorProyecto", id_proyecto=id_proyecto)
except (AttributeError, NameError):
flash(_("No se pudo acceder a Creacion de Fases! Hay Problemas con el servidor..."), 'error')
redirect("/admin/fase/listadoFasesPorProyecto", id_proyecto=id_proyecto)
return dict(nombre_modelo='Fase', idProyecto=id_proyecto, page='nuevo', value=kw)
示例6: eliminar_usuario_proyecto
# 需要导入模块: from is2sap.model import DBSession [as 别名]
# 或者: from is2sap.model.DBSession import query [as 别名]
def eliminar_usuario_proyecto(self, id_proyecto, id_usuario, **kw):
"""Metodo que elimina un usuario al proyecto seleccionado"""
try:
usuario = DBSession.query(Usuario).get(id_usuario)
proyecto = DBSession.query(Proyecto).get(id_proyecto)
if usuario.proyectos.count(proyecto) >= 1:
usuario.proyectos.remove(proyecto)
DBSession.flush()
transaction.commit()
except IntegrityError:
transaction.abort()
flash(_("No se ha desasignado dicho Usuario! Hay Problemas con el servidor..."), 'error')
redirect("/admin/proyecto/usuarios", id_proyecto=id_proyecto)
except SQLAlchemyError:
flash(_("No se ha desasignado dicho Usuario! SQLAlchemyError..."), 'error')
redirect("/admin/proyecto/usuarios", id_proyecto=id_proyecto)
except (AttributeError, NameError):
flash(_("No se ha desasignado decho Usuario! Hay Problemas con el servidor..."), 'error')
redirect("/admin/proyecto/usuarios", id_proyecto=id_proyecto)
else:
flash(_("Usuario desasignado!"), 'ok')
redirect("/admin/proyecto/usuarios", id_proyecto=id_proyecto)
示例7: nuevo
# 需要导入模块: from is2sap.model import DBSession [as 别名]
# 或者: from is2sap.model.DBSession import query [as 别名]
def nuevo(self, id_fase, **kw):
"""Despliega el formulario para añadir una linea base a la fase"""
fase=DBSession.query(Fase).get(id_fase)
#Comprobación de si el estado de la fase se encuentra en Con Lineas Bases
if fase.relacion_estado_fase.nombre_estado=='Con Lineas Bases':
flash(_("Todos los items de esta fase ya se encuentran en una Linea Base Aprobada"), 'warning')
redirect("/admin/linea_base/listado_linea_bases",id_proyecto=fase.id_proyecto, id_fase=id_fase)
tipo_items=DBSession.query(TipoItem).filter_by(id_fase=id_fase)
itemsDeFaseActual = []
for tipo_item in tipo_items:
itemsTipoItem = DBSession.query(Item).filter_by(id_tipo_item=tipo_item.id_tipo_item).filter_by(vivo=True)
for itemTipoItem in itemsTipoItem:
itemsDeFaseActual.append(itemTipoItem)
contador_items_en_fase_actual = 0
for item in itemsDeFaseActual:
contador_items_en_fase_actual = contador_items_en_fase_actual + 1
#Comprobación de si existen items cargados para la fase actual
if contador_items_en_fase_actual == 0:
flash(_("Aun no existen items cargados para esta fase"), 'warning')
redirect("/admin/linea_base/listado_linea_bases",id_proyecto=fase.id_proyecto, id_fase=id_fase)
kw['id_estado']= 'Desarrollo'
kw['id_fase']= id_fase
kw['version']= '1'
tmpl_context.form = crear_linea_base_form
return dict(nombre_modelo='LineaBase', id_proyecto=fase.id_proyecto, id_fase=id_fase, page='nuevo', value=kw)
示例8: editar
# 需要导入模块: from is2sap.model import DBSession [as 别名]
# 或者: from is2sap.model.DBSession import query [as 别名]
def editar(self, id_proyecto, id_fase, **kw):
"""Metodo que rellena el formulario para editar los datos de una Fase"""
try:
tmpl_context.form = editar_fase_form
proyecto = DBSession.query(Proyecto).get(id_proyecto)
if proyecto.iniciado == True:
flash(_("Proyecto ya iniciado. No puede editar fases!"), 'error')
redirect("/admin/fase/listadoFasesPorProyecto", id_proyecto=id_proyecto)
traerFase=DBSession.query(Fase).get(id_fase)
kw['id_fase']=traerFase.id_fase
kw['id_estado_fase']=traerFase.id_estado_fase
kw['id_proyecto']=traerFase.id_proyecto
kw['nombre']=traerFase.nombre
kw['descripcion']=traerFase.descripcion
kw['numero_fase']=traerFase.numero_fase
except SQLAlchemyError:
flash(_("No se pudo acceder a Edicion de Fases! SQLAlchemyError..."), 'error')
redirect("/admin/fase/listadoFasesPorProyecto", id_proyecto=id_proyecto)
except (AttributeError, NameError):
flash(_("No se pudo acceder a Edicion de Fases! Hay Problemas con el servidor..."), 'error')
redirect("/admin/fase/listadoFasesPorProyecto", id_proyecto=id_proyecto)
return dict(nombre_modelo='Fase', page='editar_fase', value=kw)
示例9: delete
# 需要导入模块: from is2sap.model import DBSession [as 别名]
# 或者: from is2sap.model.DBSession import query [as 别名]
def delete(self, id_proyecto, id_fase, **kw):
""" Metodo que elimina un registro de la base de datos
Parametros:
- id_fase: identificador de la fase
"""
try:
tipo_items = DBSession.query(TipoItem).filter_by(id_fase=id_fase).all()
for tipo_item in tipo_items:
id_tipo_item = tipo_item.id_tipo_item
atributos = DBSession.query(Atributo).filter_by(id_tipo_item=id_tipo_item).all()
for atributo in atributos:
DBSession.delete(DBSession.query(Atributo).get(atributo.id_atributo))
DBSession.delete(DBSession.query(TipoItem).get(id_tipo_item))
DBSession.delete(DBSession.query(Fase).get(id_fase))
transaction.commit()
except IntegrityError:
transaction.abort()
flash(_("No se ha eliminado! Hay Problemas con el servidor..."), 'error')
redirect("/admin/fase/listadoFasesPorProyecto", id_proyecto=id_proyecto)
except SQLAlchemyError:
flash(_("No se ha eliminado! SQLAlchemyError..."), 'error')
redirect("/admin/fase/listadoFasesPorProyecto", id_proyecto=id_proyecto)
except (AttributeError, NameError):
flash(_("No se ha eliminado! Hay Problemas con el servidor..."), 'error')
redirect("/admin/fase/listadoFasesPorProyecto", id_proyecto=id_proyecto)
else:
flash(_("Fase eliminada!"), 'ok')
redirect("/admin/fase/listadoFasesPorProyecto", id_proyecto=id_proyecto)
示例10: delete
# 需要导入模块: from is2sap.model import DBSession [as 别名]
# 或者: from is2sap.model.DBSession import query [as 别名]
def delete(self, id_proyecto, id_fase, id_tipo_item, **kw):
"""Metodo que elimina un registro de la base de datos"""
try:
atributos = DBSession.query(Atributo).filter_by(id_tipo_item=id_tipo_item).all()
for atributo in atributos:
DBSession.delete(DBSession.query(Atributo).get(atributo.id_atributo))
DBSession.delete(DBSession.query(TipoItem).get(id_tipo_item))
DBSession.flush()
transaction.commit()
except IntegrityError:
transaction.abort()
flash(_("No se ha eliminado! Hay Problemas con el servidor..."), 'error')
redirect("/admin/tipo_item/listadoTipoItemPorFase", id_proyecto=id_proyecto, id_fase=id_fase)
except SQLAlchemyError:
flash(_("No se ha eliminado! SQLAlchemyError..."), 'error')
redirect("/admin/tipo_item/listadoTipoItemPorFase", id_proyecto=id_proyecto, id_fase=id_fase)
except (AttributeError, NameError):
flash(_("No se ha eliminado! Hay Problemas con el servidor..."), 'error')
redirect("/admin/tipo_item/listadoTipoItemPorFase", id_proyecto=id_proyecto, id_fase=id_fase)
else:
flash(_("Tipo de Item eliminado!"), 'ok')
redirect("/admin/tipo_item/listadoTipoItemPorFase", id_proyecto=id_proyecto, id_fase=id_fase)
示例11: update
# 需要导入模块: from is2sap.model import DBSession [as 别名]
# 或者: from is2sap.model.DBSession import query [as 别名]
def update(self, **kw):
"""Metodo que actualiza la base de datos"""
try:
tipo_item = DBSession.query(TipoItem).get(kw['id_tipo_item'])
tipo_item.nombre = kw['nombre']
tipo_item.codigo = kw['codigo']
tipo_item.descripcion = kw['descripcion']
tipo_item.id_fase = kw['id_fase']
DBSession.flush()
transaction.commit()
fase = DBSession.query(Fase).get(kw['id_fase'])
id_fase = fase.id_fase
id_proyecto = fase.id_proyecto
except IntegrityError:
transaction.abort()
flash(_("No se han guardado los cambios! Hay Problemas con el servidor..."), 'error')
redirect("/admin/tipo_item/listadoTipoItemPorFase", id_proyecto=id_proyecto, id_fase=id_fase)
except SQLAlchemyError:
flash(_("No se han guardado los cambios! SQLAlchemyError..."), 'error')
redirect("/admin/tipo_item/listadoTipoItemPorFase", id_proyecto=id_proyecto, id_fase=id_fase)
except (AttributeError, NameError):
flash(_("No se han guardado los cambios! Hay Problemas con el servidor..."), 'error')
redirect("/admin/tipo_item/listadoTipoItemPorFase", id_proyecto=id_proyecto, id_fase=id_fase)
else:
flash(_("Se han guardado los cambios!"), 'ok')
redirect("/admin/tipo_item/listadoTipoItemPorFase", id_proyecto=id_proyecto, id_fase=id_fase)
示例12: editar
# 需要导入模块: from is2sap.model import DBSession [as 别名]
# 或者: from is2sap.model.DBSession import query [as 别名]
def editar(self, id_tipo_item, **kw):
"""Metodo que rellena el formulario para editar los datos de un usuario"""
try:
tmpl_context.form = editar_tipo_item_form
tipo_item = DBSession.query(TipoItem).get(id_tipo_item)
id_fase = tipo_item.id_fase
fase = DBSession.query(Fase).get(id_fase)
id_proyecto = fase.id_proyecto
proyecto = DBSession.query(Proyecto).get(id_proyecto)
if proyecto.iniciado == True:
flash(_("Proyecto ya iniciado. No puede editar Tipo de Item!"), 'error')
redirect("/admin/tipo_item/listadoTipoItemPorFase", id_proyecto=id_proyecto, id_fase=id_fase)
traertipo_item = DBSession.query(TipoItem).get(id_tipo_item)
kw['id_tipo_item'] = traertipo_item.id_tipo_item
kw['nombre'] = traertipo_item.nombre
kw['codigo'] = traertipo_item.codigo
kw['descripcion'] = traertipo_item.descripcion
kw['id_fase'] = traertipo_item.id_fase
except SQLAlchemyError:
flash(_("No se pudo acceder a Edicion de Tipo de Item! SQLAlchemyError..."), 'error')
redirect("/admin/tipo_item/listadoTipoItemPorFase", id_proyecto=id_proyecto, id_fase=id_fase)
except (AttributeError, NameError):
flash(_("No se pudo acceder a Edicion de Tipo de Item! Hay Problemas con el servidor..."), 'error')
redirect("/admin/tipo_item/listadoTipoItemPorFase", id_proyecto=id_proyecto, id_fase=id_fase)
return dict(nombre_modelo='Tipo Item', id_proyecto=id_proyecto, id_fase=id_fase, page='editar', value=kw)
示例13: eliminar_rol_usuario
# 需要导入模块: from is2sap.model import DBSession [as 别名]
# 或者: from is2sap.model.DBSession import query [as 别名]
def eliminar_rol_usuario(self, id_usuario, id_rol, **kw):
"""Metodo que elimina un rol al usuario seleccionado"""
try:
rol = DBSession.query(Rol).get(id_rol)
usuario = DBSession.query(Usuario).get(id_usuario)
if rol.usuarios.count(usuario) >= 1:
rol.usuarios.remove(usuario)
DBSession.flush()
transaction.commit()
except IntegrityError:
transaction.abort()
flash(_("No se pudo Desasignar Rol! Hay Problemas con el servidor..."), 'error')
redirect("/admin/usuario/roles", id_usuario=id_usuario)
except SQLAlchemyError:
flash(_("No se pudo Desasignar Rol! SQLAlchemyError..."), 'error')
redirect("/admin/usuario/roles", id_usuario=id_usuario)
except (AttributeError, NameError):
flash(_("No se pudo Desasignar Rol! Hay Problemas con el servidor..."), 'error')
redirect("/admin/usuario/roles", id_usuario=id_usuario)
else:
flash(_("Rol desasignado!"), 'ok')
redirect("/admin/usuario/roles", id_usuario=id_usuario)
示例14: listado_linea_bases
# 需要导入模块: from is2sap.model import DBSession [as 别名]
# 或者: from is2sap.model.DBSession import query [as 别名]
def listado_linea_bases(self, id_proyecto, id_fase, page=1):
"""Metodo para listar las lineas bases de una Fase """
fase = DBSession.query(Fase).get(id_fase)
#linea_bases = fase.linea_bases
linea_bases = DBSession.query(LineaBase).filter_by(id_fase=id_fase).order_by(LineaBase.id_linea_base)
currentPage = paginate.Page(linea_bases, page, items_per_page=5)
return dict(linea_bases=currentPage.items,
page='listado_linea_bases', nombre_fase=fase.nombre, id_proyecto=id_proyecto, id_fase=id_fase, currentPage=currentPage)
示例15: asignarItem
# 需要导入模块: from is2sap.model import DBSession [as 别名]
# 或者: from is2sap.model.DBSession import query [as 别名]
def asignarItem(self, id_proyecto, id_fase, id_linea_base, id_item):
"""Metodo que realiza la asignacion de un item a la linea base selecccionada"""
linea_base=DBSession.query(LineaBase).get(id_linea_base)
if linea_base.estado=='Aprobado':
flash(_("La Linea Base esta Aprobada y no puede modificarse"), 'error')
redirect("/admin/linea_base/listadoItemsParaAsignaraLineaBase",id_proyecto=id_proyecto, id_fase=id_fase, id_linea_base=id_linea_base)
item = DBSession.query(Item).get(id_item)
linea_base = DBSession.query(LineaBase).get(id_linea_base)
item.linea_bases.append(linea_base)
flash("Item Asignado a la Linea Base")
redirect("/admin/linea_base/listadoItemsParaAsignaraLineaBase",id_proyecto=id_proyecto, id_fase=id_fase, id_linea_base=id_linea_base)