本文整理汇总了Python中saip2011.model.DBSession.add方法的典型用法代码示例。如果您正苦于以下问题:Python DBSession.add方法的具体用法?Python DBSession.add怎么用?Python DBSession.add使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类saip2011.model.DBSession
的用法示例。
在下文中一共展示了DBSession.add方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: agregar_tipo_fase
# 需要导入模块: from saip2011.model import DBSession [as 别名]
# 或者: from saip2011.model.DBSession import add [as 别名]
def agregar_tipo_fase(self,cancel=False,**data):
errors = {}
tipo_fase = None
if request.method == 'POST':
if cancel:
redirect('/tipo_fase')
form = TipoFaseForm()
try:
data = form.to_python(data)
tipo_fase = Tipo_Fase(nombre_tipo_fase=data.get('nombre_tipo_fase'),descripcion=data.get('descripcion'))
#if isinstance(tipo_fase,Tipo_Fase) :
DBSession.add(tipo_fase)
DBSession.flush()
#DBSession.commit()
#transaction.commit()
print tipo_fase
flash("Tipo de Fase agregada!")
except Invalid, e:
print e
tipo_fase = None
errors = e.unpack_errors()
flash(_("Favor complete los datos requeridos"),'warning')
except IntegrityError:
flash("LLave duplicada")
DBSession.rollback()
redirect('/agregar_tipo_fase')
示例2: post_tipo_item
# 需要导入模块: from saip2011.model import DBSession [as 别名]
# 或者: from saip2011.model.DBSession import add [as 别名]
def post_tipo_item(self, nombre_tipo_item, codigo_tipo_item, descripcion, campo, valor):
tipo_item = Tipo_Item(
nombre_tipo_item=nombre_tipo_item, codigo_tipo_item=codigo_tipo_item, descripcion=descripcion
)
DBSession.add(tipo_item)
if campo is not None:
if not isinstance(campo, list):
campo = [campo]
if valor is not None:
if not isinstance(valor, list):
valor = [valor]
indice = 0
id_tipo = Tipo_Item.get_ultimo_id()
for c in campo:
if len(c) > 0:
camp = Tipo_Campos(id_tipo_item=id_tipo, nombre_campo=c, valor_campo=valor[indice])
DBSession.add(camp)
indice += 1
flash("Tipo Item Agregado!")
redirect("/tipo_item/tipo_item")
示例3: agregar_usuario
# 需要导入模块: from saip2011.model import DBSession [as 别名]
# 或者: from saip2011.model.DBSession import add [as 别名]
def agregar_usuario(self,cancel=False,**data):
errors = {}
usuario = None
if request.method == 'POST':
if cancel:
redirect('/usuario')
form = UsuarioForm()
try:
data = form.to_python(data)
usuario = Usuario(alias=data.get('alias'),nombre=data.get('nombre'),apellido=data.get('apellido'),email_address=data.get('email'),_password=data.get('clave'))
#if isinstance(usuario,Usuario) :
DBSession.add(usuario)
DBSession.flush()
#DBSession.commit()
#transaction.commit()
print usuario
flash("Usuario agregado!")
except Invalid, e:
print e
usuario = None
errors = e.unpack_errors()
flash(_("Favor complete los datos requeridos"),'warning')
except IntegrityError:
flash("LLave duplicada")
DBSession.rollback()
redirect('/agregar_usuario')
示例4: post_miembro
# 需要导入模块: from saip2011.model import DBSession [as 别名]
# 或者: from saip2011.model.DBSession import add [as 别名]
def post_miembro(self, idusuario, idrol, asmSelect0, fases):
if idusuario is not None:
idusuario = int(idusuario)
if idrol is not None:
idrol = int(idrol)
if fases is not None:
if not isinstance(fases, list):
fases = [fases]
fases = [DBSession.query(Fase).get(fase) for fase in fases]
valor=int( Variables.get_valor_by_nombre("proyecto_actual"))
equipo = Equipo_Desarrollo(proyecto=valor, idusuario=idusuario,
idrol=idrol, fases=fases)
# usuario = Usuario.get_user_by_id(idusuario)
# rol = Rol.get_rol_by_id(idrol)
# usuario.roles=[]
# usuario.roles.append(rol)
DBSession.add(equipo)
DBSession.flush()
flash("Miembro Agregado Agregado!")
redirect('/equipo/equipo')
示例5: put
# 需要导入模块: from saip2011.model import DBSession [as 别名]
# 或者: from saip2011.model.DBSession import add [as 别名]
def put(self, id_tipo_item, nombre_tipo_item, codigo_tipo_item, descripcion, campo, valor, **kw):
if id_tipo_item is not None:
id_tipo_item = int(id_tipo_item)
tipo_item = Tipo_Item.get_tipo_item_by_id(id_tipo_item)
campos2 = Tipo_Campos.get_campos_by_tipo_item(tipo_item.id_tipo_item)
for cam in campos2:
Tipo_Campos.borrar_by_id(cam.id_tipo_campos)
DBSession.flush()
tipo_item.nombre_tipo_item = nombre_tipo_item
tipo_item.descripcion = descripcion
tipo_item.codigo_tipo_item = codigo_tipo_item
if campo is not None:
if not isinstance(campo, list):
campo = [campo]
if valor is not None:
if not isinstance(valor, list):
valor = [valor]
indice = 0
for c in campo:
if len(c) > 0:
camp = Tipo_Campos(id_tipo_item=id_tipo_item, nombre_campo=c, valor_campo=valor[indice])
DBSession.add(camp)
indice += 1
DBSession.flush()
flash("Tipo de Item modificada!")
redirect("/tipo_item/tipo_item")
示例6: agregar_privilegio
# 需要导入模块: from saip2011.model import DBSession [as 别名]
# 或者: from saip2011.model.DBSession import add [as 别名]
def agregar_privilegio(self, cancel=False, **data):
nom_proyecto = Variables.get_valor_by_nombre("nombre_proyecto_actual")
nom_fase = Variables.get_valor_by_nombre("nombre_fase_actual")
errors = {}
privilegio = None
if request.method == "POST":
if cancel:
redirect("/privilegio")
form = PrivilegioForm()
try:
data = form.to_python(data)
privilegio = Privilegios(
nombreprivilegio=data.get("nombreprivilegio"), descripcion=data.get("descripcion")
)
DBSession.add(privilegio)
DBSession.flush()
print privilegio
flash("Privilegio agregado!")
redirect("/privilegio")
except Invalid, e:
print e
privilegio = None
errors = e.unpack_errors()
flash(_("Favor complete los datos requeridos"), "warning")
except IntegrityError:
flash("LLave duplicada")
DBSession.rollback()
redirect("/agregar_privilegio")
示例7: agregar_privilegio
# 需要导入模块: from saip2011.model import DBSession [as 别名]
# 或者: from saip2011.model.DBSession import add [as 别名]
def agregar_privilegio(self,cancel=False,**data):
errors = {}
privilegio = None
if request.method == 'POST':
if cancel:
redirect('/privilegio')
form = PrivilegioForm()
try:
data = form.to_python(data)
privilegio = Privilegios(nombreprivilegio=data.get('nombreprivilegio'),descripcion=data.get('descripcion'))
#if isinstance(usuario,Usuario) :
DBSession.add(privilegio)
DBSession.flush()
#DBSession.commit()
#transaction.commit()
print privilegio
flash("Privilegio agregado!")
except Invalid, e:
print e
privilegio = None
errors = e.unpack_errors()
flash(_("Favor complete los datos requeridos"),'warning')
except IntegrityError:
flash("LLave duplicada")
DBSession.rollback()
redirect('/agregar_privilegio')
示例8: agregar_usuario
# 需要导入模块: from saip2011.model import DBSession [as 别名]
# 或者: from saip2011.model.DBSession import add [as 别名]
def agregar_usuario(self, cancel=False, **data):
nom_proyecto = Variables.get_valor_by_nombre("nombre_proyecto_actual")
nom_fase = Variables.get_valor_by_nombre("nombre_fase_actual")
usuarios = Usuario.get_alias()
errors = {}
usuario = None
if request.method == "POST":
if cancel:
redirect("/usuario")
form = UsuarioForm()
try:
data = form.to_python(data)
usuario = Usuario(
alias=data.get("alias"),
nombre=data.get("nombre"),
apellido=data.get("apellido"),
email_address=data.get("email"),
nacionalidad=data.get("nacionalidad"),
tipodocumento=data.get("tipodocumento"),
nrodoc=data.get("nrodoc"),
_password=data.get("clave"),
)
if usuario.alias not in usuarios:
usuario._set_password(data.get("clave"))
rol = Rol.get_rol_by_nombre("Usuario Basico")
usuario.roles.append(rol)
DBSession.add(usuario)
DBSession.flush()
print usuario
flash("Usuario agregado!")
redirect("/usuario")
else:
flash(_("Favor cambie el alias es repetido"), "warning")
return dict(
pagina="usuarios",
usuario=usuario,
errors=errors,
data=data.get("alias"),
nom_proyecto=nom_proyecto,
nom_fase=nom_fase,
usuarios=usuarios,
)
except Invalid, e:
print e
usuario = None
errors = e.unpack_errors()
flash(_("Favor complete los datos requeridos"), "warning")
except IntegrityError:
flash("LLave duplicada")
DBSession.rollback()
redirect("/agregar_usuario")
示例9: post_revivir_item
# 需要导入模块: from saip2011.model import DBSession [as 别名]
# 或者: from saip2011.model.DBSession import add [as 别名]
def post_revivir_item(self, id_item, nombre_item , codigo_item,
nombre_tipo_item, estado, complejidad, **kw):
item = Item.get_item_by_id(id_item)
item.estado_oculto="Activo"
DBSession.add(item)
DBSession.flush()
flash("item Revivido!")
redirect('/item/item')
示例10: post_rol
# 需要导入模块: from saip2011.model import DBSession [as 别名]
# 或者: from saip2011.model.DBSession import add [as 别名]
def post_rol(self, nombrerol, descripcion, asmSelect0, privilegios=None):
if privilegios is not None:
if not isinstance(privilegios, list):
privilegios = [privilegios]
privilegios = [DBSession.query(Privilegios).get(privilegio) for privilegio in privilegios]
rol = Rol(nombrerol=nombrerol, descripcion=descripcion, privilegios=privilegios)
DBSession.add(rol)
DBSession.flush()
flash("Rol agregado!")
redirect("/rol")
示例11: post_recuperar_item
# 需要导入模块: from saip2011.model import DBSession [as 别名]
# 或者: from saip2011.model.DBSession import add [as 别名]
def post_recuperar_item(self, id_item, nombre_item, codigo_item,
nombre_tipo_item, estado, complejidad, **kw):
if id_item is not None:
id_item=int(id_item)
if complejidad is not None:
complejidad=int(complejidad)
item = Item.version_actual(id_item)
item.estado_oculto="Desactivado"
version= item.version+1
DBSession.flush()
item2 = Item.get_item_by_id(id_item)
item3 = Item (nombre_item=item2.nombre_item,
codigo_item=item2.codigo_item,
id_tipo_item=item2.id_tipo_item,
orden=item2.orden,
complejidad=item2.complejidad, estado = item2.estado,
fase=item2.fase, proyecto=item2.proyecto,
creado_por =item2.creado_por,
fecha_creacion = item2.fecha_creacion ,
version =version , estado_oculto="Activo",
lb_parcial=item2.lb_parcial,lb_general=item2.lb_general)
DBSession.add(item3)
DBSession.flush()
adjuntos=Adjunto.get_adjuntos_by_item(item.id_item)
for adjun in adjuntos:
adjun.estado_oculto=item.estado_oculto
DBSession.flush()
mayor =Item.get_ultimo_id()
adjuntos=Adjunto.get_adjuntos_by_item(item2.id_item)
for adjun in adjuntos:
adj2 = Adjunto(id_item=mayor,archivo=adjun.archivo,
nombre_archivo=adjun.nombre_archivo,
version=item3.version,
estado_oculto=item3.estado_oculto )
DBSession.add(adj2)
DBSession.flush()
flash("item recuperado!")
redirect('/item/item')
示例12: post_tipo_fase
# 需要导入模块: from saip2011.model import DBSession [as 别名]
# 或者: from saip2011.model.DBSession import add [as 别名]
def post_tipo_fase(self, nombre_tipo_fase, tipos_items, descripcion,asmSelect0):
if tipos_items is not None:
if not isinstance(tipos_items, list):
tipos_items = [tipos_items]
tipos_items = [DBSession.query(Tipo_Item).get(tipo_item) for tipo_item
in tipos_items]
tipo_fase = Tipo_Fase (nombre_tipo_fase=nombre_tipo_fase,
descripcion=descripcion,tipos_items=tipos_items)
DBSession.add(tipo_fase)
DBSession.flush()
flash("tipo_fase agregada!")
redirect('/tipo_fase/tipo_fase')
示例13: put_proyecto
# 需要导入模块: from saip2011.model import DBSession [as 别名]
# 或者: from saip2011.model.DBSession import add [as 别名]
def put_proyecto(self, id_proyecto, nombre_proyecto, idusuario, descripcion,
asmSelect0, tipos_fases,**kw):
nom_proyecto=Variables.get_valor_by_nombre("nombre_proyecto_actual")
nom_fase=Variables.get_valor_by_nombre("nombre_fase_actual")
if id_proyecto is not None:
id_proyecto=int(id_proyecto)
if idusuario is not None:
idusuario=int(idusuario)
nombres=Proyecto.get_nombres()
proyecto = DBSession.query(Proyecto).get(id_proyecto)
if not isinstance(nombres, list):
nombres = [nombres]
nombres.remove(proyecto.nombre_proyecto)
if nombre_proyecto not in nombres:
miembro=Equipo_Desarrollo.get_miembro_by_usuario_by_proyecto(
proyecto.idusuario,proyecto.id_proyecto)
id_miembro=miembro.id_equipo
Equipo_Desarrollo.borrar_by_id(id_miembro)
DBSession.flush()
fases=Fase.get_fase_by_proyecto(proyecto.id_proyecto)
for fase in fases:
Fase.borrar_by_id(fase.id_fase)
DBSession.flush()
if not isinstance(tipos_fases, list):
tipos_fases = [tipos_fases]
tipos_fases = [DBSession.query(Tipo_Fase).get(tipo_fase)
for tipo_fase in tipos_fases]
cant=1
for tipo_fase in tipos_fases:
fase = Fase (nombre_fase=tipo_fase.nombre_tipo_fase,
id_tipo_fase=tipo_fase.id_tipo_fase, estado ="Nuevo",
proyecto=proyecto.id_proyecto,orden=cant,
linea_base="Abierta",
descripcion=tipo_fase.descripcion)
DBSession.add(fase)
DBSession.flush()
cant+=1
proyecto.idusuario = idusuario
proyecto.nombre_proyecto=nombre_proyecto
proyecto.descripcion = descripcion
proyecto.tipos_fases = tipos_fases
proyecto.estado="Desactivado"
DBSession.flush()
fases = Fase.get_fase_by_proyecto(Proyecto.get_ultimo_id())
nom="Lider Proyecto"
mirol=Rol.get_rol_by_nombre(nom)
equipo = Equipo_Desarrollo(proyecto=Proyecto.get_ultimo_id(),
idusuario=idusuario,
idrol=mirol.idrol,fases=fases)
DBSession.add(equipo)
DBSession.flush()
fases = Fase.get_fase_by_proyecto(proyecto.id_proyecto)
flash("Proyecto Modificado!")
return dict(pagina="/fase/listar_fase", fases=fases,
nom_proyecto=nom_proyecto,nom_fase=nom_fase)
else:
flash("nombre proyecto repetido!")
redirect('/proyecto/editar_proyecto?id_proyecto=%d' % id_proyecto)
示例14: post_proyecto
# 需要导入模块: from saip2011.model import DBSession [as 别名]
# 或者: from saip2011.model.DBSession import add [as 别名]
def post_proyecto(self, nombre_proyecto, idusuario, tipos_fases, asmSelect0,
descripcion,start=0,end=5,indice=None,texto=""):
nom_proyecto=Variables.get_valor_by_nombre("nombre_proyecto_actual")
nom_fase=Variables.get_valor_by_nombre("nombre_fase_actual")
nombres=Proyecto.get_nombres()
if not isinstance(nombres, list):
nombres = [nombres]
if nombre_proyecto not in nombres:
if idusuario is not None:
idusuario = int(idusuario)
if tipos_fases is not None:
if not isinstance(tipos_fases, list):
tipos_fases = [tipos_fases]
tipos_fases = [DBSession.query(Tipo_Fase).get(tipo_fase)
for tipo_fase in tipos_fases]
proyecto = Proyecto (nombre_proyecto=nombre_proyecto,
idusuario=idusuario,
descripcion=descripcion,
tipos_fases=tipos_fases,
estado ="Desactivado")
DBSession.add(proyecto)
DBSession.flush()
proy=int(Proyecto.get_ultimo_id())
cant=1
lista=[]
for tipo_fase in tipos_fases:
fase = Fase (nombre_fase=tipo_fase.nombre_tipo_fase,
id_tipo_fase=tipo_fase.id_tipo_fase,
estado ="Nuevo",proyecto=proy,
orden=cant,linea_base="Abierta",
descripcion=tipo_fase.descripcion)
DBSession.add(fase)
DBSession.flush()
lista.append(fase)
cant+=1
nom="Lider Proyecto"
mirol=Rol.get_rol_by_nombre(nom)
fases2=Fase.get_fase_by_proyecto(proy)
equipo = Equipo_Desarrollo(proyecto=Proyecto.get_ultimo_id(),
idusuario=idusuario,
idrol=mirol.idrol,fases=fases2)
DBSession.add(equipo)
DBSession.flush()
fases,len_fases = Fase.get_fase_by_proyecto_por_pagina(proy,start,end)
############
paginado = 5
if start <> 0:
end=int(start.split('=')[1]) #obtiene el fin de pagina
start=int(start.split('&')[0]) #obtiene el inicio de pagina
#print start,end
total = len(Fase.get_fase_by_proyecto(proy))
pagina_actual = ((start % end) / paginado) + 1
if ((start % end) % paginado) <> 0:
pagina_actual = pagina_actual + 1
#roles = Fase.get_fase_by_proyecto_por_pagina(proy,start,end)
###########
param="/fase/fase"
flash("Proyecto Agregado!")
return dict(pagina="../fase/fase", fases=fases,
nom_proyecto=nom_proyecto,nom_fase=nom_fase,
inicio=start,fin=end,paginado=paginado,
pagina_actual=pagina_actual,total=total,
param=param)
else:
nom_proyecto=Variables.get_valor_by_nombre("nombre_proyecto_actual")
nom_fase=Variables.get_valor_by_nombre("nombre_fase_actual")
usuarios = Usuario.get_usuarios()
tipos_fases = Tipo_Fase.get_tipo_fases()
flash("Nombre del Proyecto ya existe!")
redirect('../proyecto/agregar_proyecto')
示例15: post_item
# 需要导入模块: from saip2011.model import DBSession [as 别名]
# 或者: from saip2011.model.DBSession import add [as 别名]
def post_item(self, nombre_item, complejidad, adjunto, id_tipo_item,
asmSelect0,padres=None):
items= Item.get_nombres_items()
if nombre_item not in items:
if id_tipo_item is not None:
id_tipo_item = int(id_tipo_item)
if complejidad is not None:
complejidad=int(complejidad)
if adjunto is not None:
if not isinstance(adjunto, list):
adjunto = [adjunto]
if padres is not None:
if not isinstance(padres, list):
padres = [padres]
padres = [DBSession.query(Item).get(padre) for padre
in padres]
#----------------------------------------
tipo_item =Tipo_Item.get_tipo_item_by_id(id_tipo_item)
pre_codigo=tipo_item.codigo_tipo_item
proy_act=int (Variables.get_valor_by_nombre("proyecto_actual"))
fas_act=int (Variables.get_valor_by_nombre("fase_actual"))
fase=Fase.get_fase_by_id(fas_act)
codigo_item=Item.crear_codigo(id_tipo_item,
pre_codigo,proy_act,fas_act)
item = Item (nombre_item=nombre_item, codigo_item=codigo_item,
id_tipo_item=id_tipo_item,
complejidad=complejidad, estado = "nuevo",
fase=fas_act,proyecto=proy_act,orden=fase.orden,
creado_por=Variables.get_valor_by_nombre("usuario_actual"),
fecha_creacion = time.ctime(), version =1 ,
estado_oculto="Activo",lb_parcial=0,lb_general=0
)
DBSession.add(item)
DBSession.flush()
#----------------------------------------
for padre in padres:
if padre.nombre_item == "master":
padres.remove(padre)
mayor =int(Item.get_ultimo_id())
relacion = Relaciones (id_item_hijo=mayor,padres=padres)
#----------------------------------------
id_item2=Item.get_ultimo_id()
tipos_campos=Tipo_Campos.get_campos_by_tipo_item(id_tipo_item)
for tipo in tipos_campos:
camp =Campos(id_item=id_item2,
nombre_campo=tipo.nombre_campo,
tipo_campo= tipo.valor_campo)
DBSession.add(camp)
DBSession.flush()
#----------------------------------------
if adjunto is not None:
for adj in adjunto:
if len(str(adj))==0:
break
if len(adj.filename)==0:
break
data = adj.file.read()
encode=base64.b64encode(data)
var=binascii.a2b_base64(encode)
adj = Adjunto (id_item=mayor, archivo=var,
nombre_archivo=adj.filename, version =item.version ,
estado_oculto=item.estado_oculto)
DBSession.add(adj)
DBSession.flush()
flash("Item Agregado!")
redirect('/item/item')
else:
nom_fase=Variables.get_valor_by_nombre("nombre_fase_actual")
nom_proyecto=Variables.get_valor_by_nombre("nombre_proyecto_actual")
id_fase=int(Variables.get_valor_by_nombre("fase_actual"))
padres=Item.get_item_activados() #cambiar esta funcion y solo traer lo que no forman ciclos
fase = Fase.get_fase_by_id(id_fase)
tipos_items=fase.tipos_items
#.........这里部分代码省略.........