本文整理汇总了Python中projectmanager.model.DBSession.add方法的典型用法代码示例。如果您正苦于以下问题:Python DBSession.add方法的具体用法?Python DBSession.add怎么用?Python DBSession.add使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类projectmanager.model.DBSession
的用法示例。
在下文中一共展示了DBSession.add方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: save
# 需要导入模块: from projectmanager.model import DBSession [as 别名]
# 或者: from projectmanager.model.DBSession import add [as 别名]
def save(self, userfile):
forbidden_files = [".js", ".htm", ".html", ".mp3"]
for forbidden_file in forbidden_files:
if not hasattr(userfile,'filename'):
redirect('file_upload?validate=error')
elif userfile.filename.find(forbidden_file) != -1:
return redirect("/")
versionItem = DBSession.query(VersionItem).\
filter(VersionItem.id_version_item == Globals.\
current_item.id_version_item).one()
filecontent = userfile.file.read()
new_file = AtributoArchivo(filename=userfile.filename, filecontent=filecontent)
DBSession.add(new_file)
atributo = DBSession.query(AtributoItem).\
filter(AtributoItem.id_version_item==versionItem.id_version_item).\
filter(AtributoItem.id_atributo == Globals.current_atributo.id_atributo).one()
atributo.atributoArchivo = new_file
redirect("/item/atributosItem?id_version="+\
str(versionItem.id_version_item) + ";frompage=item")
示例2: aprobar
# 需要导入模块: from projectmanager.model import DBSession [as 别名]
# 或者: from projectmanager.model.DBSession import add [as 别名]
def aprobar(self, **kw):
print '***************************************************************************************************************'
print 'entro aca'
lineaBase_id = kw['idlineaBase']
nroLineaBaseAprobar = DBSession.query(NroLineaBase).\
filter(NroLineaBase.id_nro_lb == lineaBase_id).one()
items = nroLineaBaseAprobar.item
band = 1
if (items == []):
band = 0
flash(_("ERROR!! NO SE PUEDE APROBAR UNA LINEA BASE SIN ITEMS"))
redirect("/lineaBase/index?id_fase="+str(Globals.current_phase.id_fase))
else:
estadoA = DBSession.query(Estado).filter(Estado.nom_estado == 'Aprobado').one()
for itemEstado in nroLineaBaseAprobar.item:
itemEstado.estado = estadoA
Globals.current_phase.id_estado = estadoA.id_estado
nroLineaBaseAprobar.id_estado = estadoA.id_estado
DBSession.add(nroLineaBaseAprobar)
DBSession.flush()
flash(_("LA LINEA BASE HA SIDO APROBADA"))
redirect("/lineaBase/index?id_fase="+str(Globals.current_phase.id_fase))
示例3: setup
# 需要导入模块: from projectmanager.model import DBSession [as 别名]
# 或者: from projectmanager.model.DBSession import add [as 别名]
def setup(self):
try:
new_attrs = {}
new_attrs.update(self.attrs)
new_attrs.update(self.do_get_dependencies())
self.obj = self.klass(**new_attrs)
DBSession.add(self.obj)
DBSession.flush()
return self.obj
except:
DBSession.rollback()
raise
示例4: savePhase
# 需要导入模块: from projectmanager.model import DBSession [as 别名]
# 或者: from projectmanager.model.DBSession import add [as 别名]
def savePhase(self, **kw):
Phase = Fase()
project = DBSession.query(Proyecto).\
filter(Proyecto.id_proyecto == Globals.current_project.id_proyecto).one()
estado =DBSession.query(Estado).\
filter(Estado.nom_estado == 'Inicial').one()
Phase.proyectoFase = project
Phase.estadoFase = estado
Phase.nro_fase = kw['nroPhase']
Phase.nom_fase = kw['phaseName']
Phase.des_fase = kw['descripcion']
DBSession.add(Phase)
flash(_("Se ha creado una nueva Fase: %s") %kw['phaseName'],'info')
redirect("index?id_proyecto="+str(Globals.current_project.id_proyecto))
示例5: saveProject
# 需要导入模块: from projectmanager.model import DBSession [as 别名]
# 或者: from projectmanager.model.DBSession import add [as 别名]
def saveProject(self, **kw):
"""
Funcion que se encarga de guardar los datos introducidos en el formulario
para el nuevo proyecto.
Al crear un nuevo proyecto se establece el estado de este
en 'No Iniciado'
"""
aProject = Proyecto()
estado =DBSession.query(Estado).filter(Estado.nom_estado == 'No Iniciado').one()
aProject.estadoProyecto = estado
aProject.nom_proyecto = kw['projectName']
aProject.des_proyecto = kw['descripcion']
DBSession.add(aProject)
flash(_("Se ha creado un nuevo Proyecto: %s") %kw['projectName'],'info')
redirect("adminProject")
示例6: abrirLineaBase
# 需要导入模块: from projectmanager.model import DBSession [as 别名]
# 或者: from projectmanager.model.DBSession import add [as 别名]
def abrirLineaBase(self, **kw):
print 'abrir linea base'
lineaBase = kw['idlineaBase']
estadoD = DBSession.query(Estado).filter(Estado.nom_estado == 'En Desarrollo').one()
Globals.current_phase.id_estado = estadoD.id_estado
estadoA = DBSession.query(Estado).filter(Estado.nom_estado == 'Abierta').one()
usuario = DBSession.query(Usuario).filter(Usuario.login_name == request.identity['repoze.who.userid']).one()
nroLineaBase = DBSession.query(NroLineaBase).filter(NroLineaBase.id_nro_lb == lineaBase).one()
aNroLineaBase = NroLineaBase()
aNroLineaBase.id_linea_base = nroLineaBase.id_linea_base
aNroLineaBase.nro_linea_base = nroLineaBase.nro_linea_base + 1
aNroLineaBase.id_estado = estadoA.id_estado
aNroLineaBase.id_usuario_aprobo = usuario.id_usuario
items = nroLineaBase.item
estadoC = DBSession.query(Estado).filter(Estado.nom_estado == 'Confirmado').one()
for itemGuardar in items:
itemGuardar.estado = estadoC
aNroLineaBase.item.append(itemGuardar)
print 'ABRIR/NUEVA VERSION ID '
print aNroLineaBase.id_linea_base
print 'ABRIR/NUEVA nro_linea_base '
print aNroLineaBase.nro_linea_base
print 'ABRIR/NUEVA id_estado '
print aNroLineaBase.id_estado
DBSession.add(aNroLineaBase)
DBSession.flush()
flash(_("LA LINEA BASE HA SIDO ABIERTA"))
redirect("/lineaBase/index?id_fase="+str(Globals.current_phase.id_fase))
示例7: saveImport
# 需要导入模块: from projectmanager.model import DBSession [as 别名]
# 或者: from projectmanager.model.DBSession import add [as 别名]
def saveImport(self,**kw):
fase = DBSession.query(Fase).\
filter(Fase.id_fase==Globals.current_phase.id_fase).one()
tipo=DBSession.query(TipoItem).filter(TipoItem.id_tipo_item==int(kw['id_tipo'])).one()
tipoNew = TipoItem()
tipoNew.nom_tipo_item = tipo.nom_tipo_item
tipoNew.fase = fase
tipoNew.prefijo = tipo.prefijo
tipoNew.cont_prefijo = 0
list_atributos = []
for atributo in tipo.Atributo:
list_atributos.append(Atributo(atributo.nom_atributo,
atributo.tipoDatoAtributo,
tipoNew))
DBSession.add(tipoNew)
DBSession.add_all(list_atributos)
redirect('/fase/importTipoItem')
示例8: saveUser
# 需要导入模块: from projectmanager.model import DBSession [as 别名]
# 或者: from projectmanager.model.DBSession import add [as 别名]
def saveUser(self, **kw):
"""Create a movie object and save it to the database."""
user = Usuario()
user.nom_usuario = kw['userName']
user.login_name = kw['loginName']
user._set_password(kw['password'])
type = int(kw['userType'])
DBSession.add(user)
if type == 1:
grupo = DBSession.query(Group).filter(Group.group_name=='admin').one()
grupo.users.append(user)
else:
grupo = DBSession.query(Group).filter(Group.group_name=='user').one()
grupo.users.append(user)
DBSession.flush()
#flash("El Usuario ha sido registrado satisfactoriamente.")
redirect("adminUsers")
示例9: saveItem
# 需要导入模块: from projectmanager.model import DBSession [as 别名]
# 或者: from projectmanager.model.DBSession import add [as 别名]
def saveItem(self, **kw):
unItem = Item()
unItem.nom_item = kw["nomItem"]
# aProject.des_proyecto = kw['descripcion']
DBSession.add(unItem)
unaVersionItem = VersionItem()
unaVersionItem.item = unItem
unEstado = DBSession.query(Estado).filter_by(id_estado=1).one()
unTipoItem = DBSession.query(TipoItem).filter_by(id_tipo_item=1).one()
unUsuario = DBSession.query(Usuario).filter_by(id_usuario=1).one()
unaVersionItem.estado = unEstado
unaVersionItem.tipoItem = unTipoItem
unaVersionItem.usuarioModifico = unUsuario
unaVersionItem.fecha = "10/06/2011"
unaVersionItem.observaciones = kw["observaciones"]
# unaVersionItem.peso = kw['peso']
DBSession.add(unaVersionItem)
for atributo in DBSession.query(Atributo).filter_by(tipoItem=unTipoItem):
nuevoAtributoItem = AtributoItem()
nuevoAtributoItem.atributo = atributo
nuevoAtributoItem.versionItem = unaVersionItem
nuevoAtributoItem.val_atributo = atributo.val_default
DBSession.add(nuevoAtributoItem)
flash(_("Se ha creado un nuevo Item: %s") % kw["itemName"], "info")
redirect("adminItem")
示例10: guardarLineaBase
# 需要导入模块: from projectmanager.model import DBSession [as 别名]
# 或者: from projectmanager.model.DBSession import add [as 别名]
def guardarLineaBase(self, **kw):
"""
Funcion que se encarga de guardar los datos introducidos en el formulario
para la nueva linea base.
"""
aLineaBase = LineaBase()
fase = DBSession.query(Fase).filter(Fase.id_fase == self.fase_id).one()
usuario = DBSession.query(Usuario).filter(Usuario.login_name == request.identity['repoze.who.userid']).one()
estado =DBSession.query(Estado).filter(Estado.nom_estado == 'Aprobado').one()
aLineaBase.id_fase = fase.id_fase
aLineaBase.nom_linea_base = kw['nombreLineaBase']
aLineaBase.descripcion = kw['descripcionLineaBase']
aItemsSelecionados = kw['listaItem']
DBSession.add(aLineaBase)
DBSession.flush()
print aLineaBase.id_linea_base
aNroLineaBase = NroLineaBase()
aNroLineaBase.id_linea_base = aLineaBase.id_linea_base
aNroLineaBase.nro_linea_base = 1
aNroLineaBase.id_estado = estado.id_estado
aNroLineaBase.id_usuario_aprobo = usuario.id_usuario
for items1 in aItemsSelecionados:
itemSelect = DBSession.query(VersionItem).filter(VersionItem.id_version_item ==items1).one()
print itemSelect.observaciones
itemSelect.id_estado = estado.id_estado
aNroLineaBase.item.append(itemSelect)
DBSession.add(aNroLineaBase)
DBSession.flush()
flash(_("Se ha creado una nueva Linea Base: %s") %kw['nombreLineaBase'],'info')
redirect("index?id_fase="+str(self.fase_id))
示例11: saveAtributo
# 需要导入模块: from projectmanager.model import DBSession [as 别名]
# 或者: from projectmanager.model.DBSession import add [as 别名]
#.........这里部分代码省略.........
elif tipoDato.nom_tipo_dato == 'texto':
newAtri.val_default = kw['def_texto']
elif tipoDato.nom_tipo_dato == 'fecha':
if not kw['def_fecha'] == None:
newAtri.val_default = kw['def_fecha'].strftime('%d/%m/%y')
else:
newAtri.val_default = kw['def_fecha']
else:
'''Opcion para Nuevos y Actuales Items'''
newAtri = Atributo(kw['nom_atributo'], tipoDato, tipoItem)
if tipoDato.nom_tipo_dato == 'numerico':
newAtri.val_default = kw['def_numerico']
elif tipoDato.nom_tipo_dato == 'texto':
newAtri.val_default = kw['def_texto']
elif tipoDato.nom_tipo_dato == 'fecha':
if not kw['def_fecha'] == None:
newAtri.val_default = kw['def_fecha'].strftime('%d/%m/%y')
else:
newAtri.val_default = kw['def_fecha']
item_list = DBSession.query(VersionItem).\
filter(VersionItem.ultima_version == 'S').\
filter(VersionItem.tipoItem==tipoItem).all()
for item in item_list:
item.ultima_version = 'N'
lg_name=request.identity['repoze.who.userid']
usuario = DBSession.query(Usuario).\
filter(Usuario.login_name==lg_name).one()
nuevaVersionItem = VersionItem()
nuevaVersionItem.item = item.item
nuevaVersionItem.nro_version_item = item.nro_version_item+1
nuevaVersionItem.estado = item.estado
nuevaVersionItem.tipoItem = item.tipoItem
nuevaVersionItem.usuarioModifico = usuario
nuevaVersionItem.fecha = str(datetime.now())
nuevaVersionItem.observaciones = item.observaciones
nuevaVersionItem.ultima_version = 'S'
nuevaVersionItem.peso = item.peso
nuevaVersionItem.id_fase = item.id_fase
# Agregar los antecesores del item viejo
for antecesor in item.Antecesores:
nuevaVersionItem.Antecesores.append(antecesor)
# Agregar los sucesores del item viejo
try:
antecesor = DBSession.query(Antecesor).\
filter(Antecesor.id_version_item == item.id_version_item).\
one()
nuevoAntecesor = Antecesor(nuevaVersionItem.id_version_item)
sucesores = antecesor.sucesores
for sucesor in sucesores:
sucesor.Antecesores.append(nuevoAntecesor)
except NoResultFound,e:
existe=False
# Agregar los padres del item viejo
for padre in item.Padres:
nuevaVersionItem.Padres.append(padre)
# Agregar los hijos del item viejo
try:
padre = DBSession.query(Padre).\
filter(Padre.id_version_item == item.id_version_item).\
one()
nuevoPadre = Padre(nuevaVersionItem.id_version_item)
hijos = padre.hijos
for hijo in hijos:
hijo.Padres.append(nuevoPadre)
except NoResultFound,e:
existe=False
# Copiamos los atributos del item viejo
for atributo in DBSession.query(AtributoItem).\
filter(AtributoItem.id_version_item == item.id_version_item).all():
nuevoAtributoItem = AtributoItem()
nuevoAtributoItem.id_atributo = atributo.id_atributo
nuevoAtributoItem.id_version_item = nuevaVersionItem.id_version_item
nuevoAtributoItem.val_atributo = atributo.val_atributo
DBSession.add(nuevoAtributoItem)
atriItem = AtributoItem()
atriItem.atributo = newAtri
atriItem.id_version_item = nuevaVersionItem.id_version_item
atriItem.val_atributo = newAtri.val_default
DBSession.add(atriItem)
示例12: pendiente
# 需要导入模块: from projectmanager.model import DBSession [as 别名]
# 或者: from projectmanager.model.DBSession import add [as 别名]
#.........这里部分代码省略.........
for itemNoActualizado in sinCambios:
itemSelect1 = DBSession.query(VersionItem).\
filter(VersionItem.id_version_item == itemNoActualizado.id_version_item).one()
#itemSelect1.estado = estadoA
listaGuardar.append(itemSelect1)
#Esta variable del tipo lista tendra todos los items relacionados a 'item'
ListaItems = []
ListaIzq = []
for itemP in listaGuardar:
if (itemP.estado != estadoItem):
flash(_("ATENCION!! EXISTEN ITEMS DE LA FASE QUE AUN NO HAN SIDO CONFIRMADOS"),"warning")
redirect("/lineaBase/index?id_fase="+str(Globals.current_phase.id_fase))
#El item modificado que se quiere volver a la LB
item = DBSession.query(VersionItem).\
filter(VersionItem.id_version_item==itemP.id_version_item).one()
#Obtener la red de relaciones desde este item
item.initGraph(item)
#Obtenemos relaciones de la Izquierda
ListaItems.extend(item.getRelacionesIzq(item.id_version_item))
ListaIzq.extend(item.getRelacionesIzq(item.id_version_item))
#Obtenemos relaciones de Abajo
hijos=item.getHijos(item.id_version_item)
ListaItems.extend(item.getHijosNietos(hijos))
#Obtenemos relaciones de la Derecha
ListaItems.extend(item.getRelacionesDer(item.id_version_item))
bandR = 0
for test in ListaItems:
itemRelacion = DBSession.query(VersionItem).\
filter(VersionItem.id_version_item == test.id_version_item).one()
if (itemRelacion.estado == estadoR):
bandR = 1
if (bandR == 1):
break
if (bandR == 1):
break
band = 1
if (ListaItems == []):
band = 0
flash(_("ATENCION!! NO EXISTEN ITEMS"),"warning")
redirect("/lineaBase/index?id_fase="+str(Globals.current_phase.id_fase))
elif(bandR == 1):
flash(_("ATENCION!! EXISTEN ITEMS DE OTRAS FASES EN REVISION"),"warning")
redirect("/lineaBase/index?id_fase="+str(Globals.current_phase.id_fase))
else:
estadoP = DBSession.query(Estado).filter(Estado.nom_estado == 'Pendiente').one()
lineaBase = DBSession.query(NroLineaBase).filter(NroLineaBase.id_nro_lb == self.nro_lb_id).one()
estadoE = DBSession.query(Estado).filter(Estado.nom_estado == 'Eliminado').one()
faseList = DBSession.query(Fase).\
filter(Fase.id_proyecto==Globals.current_project.id_proyecto).\
order_by(Fase.nro_fase).all()
print '**************************************************hola************************************************************'
print faseList[0].nro_fase
print ListaIzq
if(Globals.current_phase.nro_fase != faseList[0].nro_fase):
bandA = 0
for itemP in listaGuardar:
antecesores = itemP.Antecesores
for antecesor in antecesores:
itemAntecesor = DBSession.query(VersionItem).\
filter(VersionItem.id_version_item==antecesor.id_version_item).one()
if(itemAntecesor.estado != estadoA and itemAntecesor.ultima_version == 'S' and itemAntecesor.estado.nom_estado != "Eliminado"):
flash(_("ATENCION!! DEBE APROBAR PRIMERO LA LINEA BASE DE LA FASE ANTERIOR"),'warning')
redirect("/lineaBase/index?id_fase="+str(Globals.current_phase.id_fase))
lista=[]
Globals.current_phase.id_estado = estadoP.id_estado
lineaBase.id_estado = estadoP.id_estado
for i in lineaBase.item:
lista.append(i)
for element in lista:
lineaBase.item.remove(element)
DBSession.flush()
for item in listaGuardar:
itemSelect3 = DBSession.query(VersionItem).\
filter(VersionItem.id_version_item == item.id_version_item).one()
if(itemSelect3.estado == estadoItem):
itemSelect3.estado = estadoA
lineaBase.item.append(itemSelect3)
DBSession.add(lineaBase)
DBSession.flush()
flash(_("LA LINEA BASE HA PASADO A UN ESTADO PENDIENTE DE APROBACION"))
redirect("/lineaBase/index?id_fase="+str(Globals.current_phase.id_fase))