本文整理汇总了Python中saip.model.DBSession.delete方法的典型用法代码示例。如果您正苦于以下问题:Python DBSession.delete方法的具体用法?Python DBSession.delete怎么用?Python DBSession.delete使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类saip.model.DBSession
的用法示例。
在下文中一共展示了DBSession.delete方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: crear_relacion
# 需要导入模块: from saip.model import DBSession [as 别名]
# 或者: from saip.model.DBSession import delete [as 别名]
def crear_relacion(self, item_1, item_2, nueva_version):
"""
Crea una relación entre dos ítems.
@param item_1: Item antecesor/padre de la relación a ser creada.
@type item_1: L{Item}
@param item_2: Item sucesor/hijo de la relación a ser creada.
@type item_2: L{Item}
@return: True si la relación se creó exitosamente,
False en caso contrario.
@rtype: Bool
"""
r = Relacion()
r.id = "RE-" + item_1.id + "-" + unicode(item_1.version) + "+" + \
item_2.id + "-" + unicode(item_2.version)
r.item_1 = item_1
r.item_2 = item_2
a = forma_ciclo(r.item_1)
DBSession.add(r)
if a:
if nueva_version == r.item_1:
DBSession.delete(r.item_2)
DBSession.delete(r)
return False
else:
return True
示例2: _do_get_provider_count_and_objs
# 需要导入模块: from saip.model import DBSession [as 别名]
# 或者: from saip.model.DBSession import delete [as 别名]
def _do_get_provider_count_and_objs(self, buscado="", **kw):
""" Se utiliza para listar las líneas base que cumplan ciertas
condiciones y ciertos permisos.
"""
if TieneAlgunPermiso(tipo="Fase", recurso="Linea Base", id_fase=self.id_fase):
lineas_base = (
DBSession.query(LineaBase)
.filter(LineaBase.descripcion.contains(self.buscado))
.filter(LineaBase.id_fase == self.id_fase)
.all()
)
for lb in reversed(lineas_base):
if not lb.items:
lineas_base.remove(lb)
DBSession.delete(lb)
else:
lineas_base = list()
return len(lineas_base), lineas_base
示例3: unir
# 需要导入模块: from saip.model import DBSession [as 别名]
# 或者: from saip.model.DBSession import delete [as 别名]
def unir(self, **kw):
""" Permite realizar la unión entre dos o más líneas base de manera
que formen una sola.
"""
id_proyecto = self.id_fase.split("-")[1]
if TienePermiso("unir lineas base", id_proyecto=id_proyecto, id_fase=self.id_fase).is_met(request.environ):
if "seleccionados" in kw:
lb = LineaBase()
lb.descripcion = kw["descripcion"]
ids_lineas_base = DBSession.query(LineaBase.id).filter(LineaBase.id_fase == self.id_fase).all()
proximo_id_linea_base = proximo_id(ids_lineas_base)
lb.id = proximo_id_linea_base
lb.fase = DBSession.query(Fase).filter(Fase.id == self.id_fase).one()
lb.cerrado = False
lb.consistente = False
DBSession.add(lb)
consistente = True
for lb_seleccionada in kw["seleccionados"]:
items = DBSession.query(Item).filter(Item.id_linea_base == lb_seleccionada).all()
a_eliminar = DBSession.query(LineaBase).filter(LineaBase.id == lb_seleccionada).one()
DBSession.delete(a_eliminar)
for item in items:
item.linea_base = DBSession.query(LineaBase).filter(LineaBase.id == lb.id).one()
consistencia_lb(lb)
DBSession.add(lb)
redirect("./")
lineas_base = (
DBSession.query(LineaBase.id)
.filter(LineaBase.id_fase == self.id_fase)
.filter(LineaBase.cerrado == False)
.all()
)
d = dict(model="Linea Base", accion="./")
d["lineas_base"] = lineas_base
d["direccion_anterior"] = "./"
return d
else:
flash(u"El usuario no cuenta con los permisos necesarios", u"error")
redirect("./")
示例4: post
# 需要导入模块: from saip.model import DBSession [as 别名]
# 或者: from saip.model.DBSession import delete [as 别名]
def post(self, **kw):
"""Registra la nueva relación creada."""
r = Relacion()
item_2 = DBSession.query(Item).filter(Item.id == self.id_item) \
.filter(Item.version == self.version_item).one()
item_1 = DBSession.query(Item).filter(Item.id == kw["item_2"]) \
.order_by(desc(Item.version)).first()
r.id = "RE-" + item_1.id + "-" + unicode(item_1.version) + "+" + \
item_2.id + "-" + unicode(item_2.version + 1)
r.item_1 = item_1
r.item_2 = self.crear_version(item_2)
if forma_ciclo(r.item_1):
flash(u"No se puede crear la relación", u"error")
DBSession.delete(r.item_2)
DBSession.delete(r)
raise redirect('./')
else:
DBSession.add(r)
flash("Creacion realizada de forma exitosa")
raise redirect('./../../' + r.item_2.id + '-' + \
unicode(r.item_2.version) + '/' + 'relaciones/')
示例5: put
# 需要导入模块: from saip.model import DBSession [as 别名]
# 或者: from saip.model.DBSession import delete [as 别名]
def put(self, *args, **kw):
""" Registra los cambios realizados a un proyecto. """
id_proyecto = args[0]
proyecto_modificado = DBSession.query(Proyecto).filter(Proyecto.id == \
id_proyecto).one()
pks = self.provider.get_primary_fields(self.model)
for i, pk in enumerate(pks):
if pk not in kw and i < len(args):
kw[pk] = args[i]
usuario = None
if kw['lider']:
id_lider = kw['lider']
viejo_lider_proyecto_tupla = DBSession.query(Proyecto.id_lider). \
filter(Proyecto.id == id_proyecto).one()
if viejo_lider_proyecto_tupla:
viejo_lider_proyecto_id = viejo_lider_proyecto_tupla.id_lider
ficha = DBSession.query(Ficha).filter(Ficha.id_proyecto == \
id_proyecto).filter(Ficha.id_usuario == \
viejo_lider_proyecto_id).filter(Ficha.id_rol == u'RL2') \
.scalar()
if ficha:
usuario = DBSession.query(Usuario).filter(Usuario.id == \
id_lider).one()
ids_fichas = DBSession.query(Ficha.id).filter(Ficha. \
id_usuario == id_lider).all()
if ids_fichas:
proximo_id_ficha = proximo_id(ids_fichas)
else:
proximo_id_ficha = "FI1-" + id_lider
ficha.id = proximo_id_ficha
ficha.usuario = usuario
DBSession.add(ficha)
else:
ids_fichas = DBSession.query(Ficha.id).filter(Ficha.\
id_usuario == id_lider).all()
rol = DBSession.query(Rol).filter(Rol.id == u'RL2').one()
proyecto = DBSession.query(Proyecto).filter(Proyecto.id \
== id_proyecto).one()
usuario = DBSession.query(Usuario).filter(Usuario.id == \
id_lider).one()
fi = Ficha()
fi.usuario = usuario
fi.rol = rol
fi.proyecto = proyecto
if ids_fichas:
proximo_id_ficha = proximo_id(ids_fichas)
else:
proximo_id_ficha = "FI1-" + id_lider
fi.id = proximo_id_ficha
DBSession.add(fi)
else:
viejo_lider_proyecto_tupla = DBSession.query(Proyecto.id_lider). \
filter(Proyecto.id == id_proyecto).one()
if viejo_lider_proyecto_tupla:
viejo_lider_proyecto_id = viejo_lider_proyecto_tupla.id_lider
ficha_lider_a_eliminar = DBSession.query(Ficha).filter \
(Ficha.id_proyecto == id_proyecto). \
filter(Ficha.id_usuario == \
viejo_lider_proyecto_id).filter \
(Ficha.id_rol == u'RL2').scalar()
DBSession.delete(ficha_lider_a_eliminar)
proyecto_modificado.lider = usuario
proyecto_modificado.nombre = kw["nombre"]
proyecto_modificado.descripcion = kw["descripcion"]
if "nro_fases" in kw:
proyecto_modificado.nro_fases = kw["nro_fases"]
redirect('../')