本文整理匯總了Python中prueba.model.DBSession.query方法的典型用法代碼示例。如果您正苦於以下問題:Python DBSession.query方法的具體用法?Python DBSession.query怎麽用?Python DBSession.query使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類prueba.model.DBSession
的用法示例。
在下文中一共展示了DBSession.query方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: crearProyecto
# 需要導入模塊: from prueba.model import DBSession [as 別名]
# 或者: from prueba.model.DBSession import query [as 別名]
def crearProyecto(self, **kw):
proyecto = Proyecto()
proyecto.nombre = kw['nombre']
proyecto.estado = 'definicion'
proyecto.fecha = kw['fecha']
DBSession.add(proyecto)
proyecto = DBSession.query(Proyecto).filter_by(nombre=kw['nombre']).one()
# Se crean los permisos de consulta, edición y eliminación del proyecto
permiso_consultar = Permission()
permiso_consultar.permission_name='ConsultarProyecto' + str(proyecto.codproyecto)
DBSession.add(permiso_consultar)
permiso_editar = Permission()
permiso_editar.permission_name='EditarProyecto' + str(proyecto.codproyecto)
DBSession.add(permiso_editar)
permiso_eliminar = Permission()
permiso_eliminar.permission_name='EliminarProyecto' + str(proyecto.codproyecto)
DBSession.add(permiso_eliminar)
permiso_definir_fases = Permission()
permiso_definir_fases.permission_name='DefinirFases' + str(proyecto.codproyecto)
DBSession.add(permiso_definir_fases)
#Agregar los permisos de consulta, edicion y eliminacion al rol por defecto del usuario creador de proyecto
identity = request.environ['repoze.who.identity']
usuario_creador_de_proyecto = identity['user']
rol = DBSession.query(Group).filter_by(group_name='RolPorDefecto' + str(usuario_creador_de_proyecto.user_id)).one()
rol.permissions.append(permiso_consultar)
rol.permissions.append(permiso_editar)
rol.permissions.append(permiso_eliminar)
rol.permissions.append(permiso_definir_fases)
flash("El proyecto fue creado con exito")
redirect("ListarProyectos")
示例2: EliminarUsuario
# 需要導入模塊: from prueba.model import DBSession [as 別名]
# 或者: from prueba.model.DBSession import query [as 別名]
def EliminarUsuario(self, usuario_id, **kw):
DBSession.delete(DBSession.query(User).get(usuario_id))
DBSession.delete(DBSession.query(Permission).filter_by(permission_name=('ConsultarUsuario' + usuario_id)).one())
DBSession.delete(DBSession.query(Permission).filter_by(permission_name=('EditarUsuario' + usuario_id)).one())
DBSession.delete(DBSession.query(Permission).filter_by(permission_name=('EliminarUsuario' + usuario_id)).one())
DBSession.delete(DBSession.query(Group).filter_by(group_name=('RolPorDefecto' + usuario_id)).one())
redirect("/ListarUsuarios")
示例3: EliminarRol
# 需要導入模塊: from prueba.model import DBSession [as 別名]
# 或者: from prueba.model.DBSession import query [as 別名]
def EliminarRol(self, rol_id, **kw):
DBSession.delete(DBSession.query(Group).get(rol_id))
#DBSession.query(Permission).filter_by(permission_name=('EditarRol' + rol_id)).one()
DBSession.delete(DBSession.query(Permission).filter_by(permission_name=('ConsultarRol' + rol_id)).one())
DBSession.delete(DBSession.query(Permission).filter_by(permission_name=('EditarRol' + rol_id)).one())
DBSession.delete(DBSession.query(Permission).filter_by(permission_name=('EliminarRol' + rol_id)).one())
redirect("/ListarRoles")
示例4: TipoDeItem
# 需要導入模塊: from prueba.model import DBSession [as 別名]
# 或者: from prueba.model.DBSession import query [as 別名]
def TipoDeItem(self, proyecto_id, fase_id, **kw):
proyecto = DBSession.query(Proyecto).filter_by(codproyecto=proyecto_id).one()
fase = DBSession.query(Fase).filter_by(codfase=fase_id).one()
fases = proyecto.fases
if not isinstance(fases, list):
fases = [fases]
return dict(page='Tipos de item', proyecto=proyecto, fases=fases, fase=fase, value=kw)
示例5: calcular
# 需要導入模塊: from prueba.model import DBSession [as 別名]
# 或者: from prueba.model.DBSession import query [as 別名]
def calcular(self):
self.hash[self.codItem]=self.codItem
listaItemInicio = list()
listaItemFin= list()
aux = list()
impacto = 0
while(self.cola):
coditemActual = self.cola.popleft()
itemNuevo = DBSession.query(Item).filter_by(coditem=coditemActual).one()
print "calculando....................." + str(coditemActual) + " =========== " + str(itemNuevo.complejidad)
impacto = impacto + itemNuevo.complejidad
listaItemInicio = DBSession.query(Relacion).filter_by(coditeminicio=itemNuevo.coditem).all()
for x in listaItemInicio:
if not self.hash.has_key(x.coditemfin):
#aux.append(x.coditemfin)
self.cola.append(x.coditemfin)
self.hash[x.coditemfin]=x.coditemfin
listaItemFin = DBSession.query(Relacion).filter_by(coditemfin=itemNuevo.coditem).all()
for x in listaItemFin:
if not self.hash.has_key(x.coditeminicio):
#aux.append(x.coditemfin)
self.cola.append(x.coditeminicio)
self.hash[x.coditeminicio]=x.coditeminicio
# for coditem in aux:
# self.cola.append(coditem)
# self.hash[coditem]=coditem
return (impacto)
示例6: IngresarFase
# 需要導入模塊: from prueba.model import DBSession [as 別名]
# 或者: from prueba.model.DBSession import query [as 別名]
def IngresarFase(self, proyecto_id, fase_id, **kw):
proyecto = DBSession.query(Proyecto).filter_by(codproyecto=proyecto_id).one()
fase = DBSession.query(Fase).filter_by(codfase=fase_id).one()
items = fase.items
if not isinstance(items, list):
items = [items]
return dict(modelname='Proyecto', proyecto=proyecto, fase=fase, items=items, value=kw)
示例7: calcular
# 需要導入模塊: from prueba.model import DBSession [as 別名]
# 或者: from prueba.model.DBSession import query [as 別名]
def calcular(self):
self.hash[self.codItem]=self.codItem
listaItemInicio = list()
listaItemFin= list()
aux = list()
impacto = 0
ban=1
while(self.cola):
coditemActual = self.cola.popleft()
itemNuevo = DBSession.query(Item).filter_by(coditem=coditemActual).one()
self.itemsImplicados.append(itemNuevo)
nombreNodo = itemNuevo.nombre + " " +itemNuevo.fase.nombre + " " + str(itemNuevo.complejidad)
itemOrigen = pydot.Node(nombreNodo, style="filled", fillcolor="red")
if ban == 1:
self.grafo.add_node(itemOrigen)
ban = 0
if not itemNuevo.codfase in self.codFasesImplicadas:
self.codFasesImplicadas.append(itemNuevo.codfase)
print "calculando....................." + str(coditemActual) + " =========== " + str(itemNuevo.complejidad)
impacto = impacto + itemNuevo.complejidad
listaItemInicio = DBSession.query(Relacion).filter_by(coditeminicio=itemNuevo.coditem).all()
for x in listaItemInicio:
if not self.hash.has_key(x.coditemfin):
itemDestino = DBSession.query(Item).filter_by(coditem=x.coditemfin).one()
nombreNodoDestino = itemDestino.nombre + " " +itemDestino.fase.nombre + " " + str(itemDestino.complejidad)
itemDestino = pydot.Node(nombreNodoDestino, style="filled", fillcolor="blue")
self.grafo.add_node(itemDestino)
enlace = pydot.Edge(nombreNodo, nombreNodoDestino)
self.grafo.add_edge(enlace)
self.cola.append(x.coditemfin)
self.hash[x.coditemfin]=x.coditemfin
listaItemFin = DBSession.query(Relacion).filter_by(coditemfin=itemNuevo.coditem).all()
for x in listaItemFin:
if not self.hash.has_key(x.coditeminicio):
itemDestino = DBSession.query(Item).filter_by(coditem=x.coditeminicio).one()
nombreNodoDestino = itemDestino.nombre + " " +itemDestino.fase.nombre + " " + str(itemDestino.complejidad)
itemDestino = pydot.Node(nombreNodoDestino, style="filled", fillcolor="blue")
self.grafo.add_node(itemDestino)
enlace = pydot.Edge(nombreNodoDestino,nombreNodo)
self.grafo.add_edge(enlace)
self.cola.append(x.coditeminicio)
self.hash[x.coditeminicio]=x.coditeminicio
# for coditem in aux:
# self.cola.append(coditem)
# self.hash[coditem]=coditem
self.grafo.write_png("/home/lilian/tg2env/prueba/prueba/public/impacto/nombre.png")
return (impacto )
示例8: calcular
# 需要導入模塊: from prueba.model import DBSession [as 別名]
# 或者: from prueba.model.DBSession import query [as 別名]
def calcular(self):
item = DBSession.query(Item).filter_by(coditem=self.codItem).one()
itemFase = item.fase.items
auxItemFase = list()
padres = list()
hijos = list()
relacion_act = list()
listaItem = list()
pila = list()
visitados = list()
ciclo = 0
padres.append(self.codItem)
hijos.append(self.itemFin)
listaItem.append(self.codItem)
for i in itemFase:
auxItemFase.append(i.coditem)
for x in itemFase:
relacionAux = DBSession.query(Relacion).filter_by(coditeminicio=x.coditem).filter_by(tipo='padre-hijo').all()
for j in relacionAux:
padres.append(j.coditeminicio)
listaItem.append(j.coditeminicio)
hijos.append(j.coditemfin)
for inicio in padres:
pila.append(inicio)
while(pila and ciclo==0):
origen = pila.pop()
if not origen in visitados:
visitados.append(origen)
while origen in listaItem:
i = listaItem.index(origen)
listaItem[i] = -1
if hijos[i] in visitados:#mirar si no fue visistado.hay ciclo y se pasa al sgt valor en la lista padres
pila = list()
visitados = list()
listaItem = list()
ciclo = 1
return ciclo
break
else:
pila.append(hijos[i])
visitados.append(hijos[i])
if ciclo==1:
break
listaItem=list()
visitados=list()
for x in padres:
listaItem.append(x)
return ciclo
示例9: EliminarProyecto
# 需要導入模塊: from prueba.model import DBSession [as 別名]
# 或者: from prueba.model.DBSession import query [as 別名]
def EliminarProyecto(self, proy_id, **kw):
proyecto = DBSession.query(Proyecto).get(proy_id)
fases = proyecto.fases
if not isinstance(fases, list):
fases = [fases]
for fase in fases:
DBSession.delete(fase)
DBSession.delete(DBSession.query(Proyecto).get(proy_id))
DBSession.delete(DBSession.query(Permission).filter_by(permission_name=('ConsultarProyecto' + proy_id)).one())
DBSession.delete(DBSession.query(Permission).filter_by(permission_name=('EditarProyecto' + proy_id)).one())
DBSession.delete(DBSession.query(Permission).filter_by(permission_name=('EliminarProyecto' + proy_id)).one())
redirect("/ListarProyectos/")
示例10: editarRol
# 需要導入模塊: from prueba.model import DBSession [as 別名]
# 或者: from prueba.model.DBSession import query [as 別名]
def editarRol(self, rol_id, nombre, descripcion, permisos=None, **kw):
rol = DBSession.query(Group).filter_by(group_id=rol_id).one()
rol.group_name = nombre
rol.group_description = descripcion
if permisos is not None:
if not isinstance(permisos, list):
permisos = [permisos]
permisos = [DBSession.query(Permission).get(permiso) for permiso in permisos]
else:
permisos=list()
rol.permissions = permisos
DBSession.flush()
flash("El rol fue actualizado con exito")
redirect("/ListarRoles")
示例11: IniciarProyecto
# 需要導入模塊: from prueba.model import DBSession [as 別名]
# 或者: from prueba.model.DBSession import query [as 別名]
def IniciarProyecto(self, proyecto_id, **kw):
proyecto = DBSession.query(Proyecto).filter_by(codproyecto=proyecto_id).one()
proyecto.cantfases=len(proyecto.fases)
proyecto.estado="desarrollo"
fases = DBSession.query(Fase).filter_by(codproyecto=proyecto_id).order_by(Fase.codfase).all()
i=1
for fase in fases:
fase.orden=i;
if i==1:
fase.estado="desarrollo"
else:
fase.estado="inicial"
i=i+1
DBSession.flush()
redirect("/ListarProyectos")
示例12: EliminarFase
# 需要導入模塊: from prueba.model import DBSession [as 別名]
# 或者: from prueba.model.DBSession import query [as 別名]
def EliminarFase(self, proy_id, fase_id, **kw):
DBSession.delete(DBSession.query(Fase).get(fase_id))
#DBSession.delete(DBSession.query(Permission).filter_by(permission_name=('ConsultarUsuario' + usuario_id)).one())
#DBSession.delete(DBSession.query(Permission).filter_by(permission_name=('EditarUsuario' + usuario_id)).one())
#DBSession.delete(DBSession.query(Permission).filter_by(permission_name=('EliminarUsuario' + usuario_id)).one())
#DBSession.delete(DBSession.query(Group).filter_by(group_name=('RolPorDefecto' + usuario_id)).one())
redirect("/DefinirFases/"+proy_id)
示例13: editarFase
# 需要導入模塊: from prueba.model import DBSession [as 別名]
# 或者: from prueba.model.DBSession import query [as 別名]
def editarFase(self, proy_id, fase_id, nombre="", descripcion="", **kw):
fase = DBSession.query(Fase).filter_by(codfase=fase_id).one()
fase.nombre = nombre
fase.descripcion = descripcion
DBSession.flush()
flash("La fase fue actualizada con exito")
redirect("/DefinirFases/"+proy_id)
示例14: ModificarItem
# 需要導入模塊: from prueba.model import DBSession [as 別名]
# 或者: from prueba.model.DBSession import query [as 別名]
def ModificarItem(self, proyecto_id, fase_id, item_id, **kw):
print kw
item = DBSession.query(Item).filter_by(coditem=item_id).one()
tipoitem = item.tipoitem
###Listar items de la fase anterior y de la fase posterior
proyecto = DBSession.query(Proyecto).filter_by(codproyecto=proyecto_id).one()
orden_fase = item.fase.orden
orden_izq = orden_fase-1
orden_der = orden_fase+1
items_izq=list()
items_der=list()
if orden_fase > 1:
fase_izq = DBSession.query(Fase).filter_by(codproyecto=proyecto_id).filter_by(orden=orden_izq).one()
items_izq = fase_izq.items
if orden_fase < proyecto.cantfases:
fase_der = DBSession.query(Fase).filter_by(codproyecto=proyecto_id).filter_by(orden=orden_der).one()
items_der = fase_der.items
return dict(page='Edicion de Items', proyecto_id=proyecto_id, fase_id=fase_id, item=item, tipoitem=tipoitem, items_izq=items_izq, items_der=items_der, value=kw)
示例15: crearUsuario
# 需要導入模塊: from prueba.model import DBSession [as 別名]
# 或者: from prueba.model.DBSession import query [as 別名]
def crearUsuario(self, **kw):
usuario = User()
usuario.user_name = kw['nombre']
usuario.user_fullname = kw[u'apellido']
usuario.password = kw[u'contrasena']
usuario.user_telefono = kw[u'telefono']
usuario.user_direccion = kw[u'direccion']
usuario.email_address = kw[u'email']
DBSession.add(usuario)
#Agregar los roles
roles = kw[u'rol']
for rol_id in roles:
rol = DBSession.query(Group).filter_by(group_id=rol_id).one()
rol.users.append(usuario)
#Crear el rol por defecto para este usuario
rol_por_defecto = Group()
rol_por_defecto.group_name = 'RolPorDefecto' + str(usuario.user_id)
DBSession.add(rol_por_defecto)
rol_por_defecto.users.append(usuario) #Asociar el rol por defecto con el usuario
# Se crean los permisos de consulta, edicion y eliminacion de este usuario
permiso_consultar = Permission()
permiso_consultar.permission_name='ConsultarUsuario' + str(usuario.user_id)
DBSession.add(permiso_consultar)
permiso_editar = Permission()
permiso_editar.permission_name='EditarUsuario' + str(usuario.user_id)
DBSession.add(permiso_editar)
permiso_eliminar = Permission()
permiso_eliminar.permission_name='EliminarUsuario' + str(usuario.user_id)
DBSession.add(permiso_eliminar)
#Asociar el rol por defecto con el usuario
#rol_por_defecto.users.append(usuario)
#rol_por_defecto.permissions.append()
#Agregar los permisos de consulta, edicion y eliminacion al rol por defecto del usuario creador de usuario
identity = request.environ['repoze.who.identity']
usuario_creador_de_usuario = identity['user']
rol = DBSession.query(Group).filter_by(group_name='RolPorDefecto' + str(usuario_creador_de_usuario.user_id)).one()
rol.permissions.append(permiso_consultar)
rol.permissions.append(permiso_editar)
rol.permissions.append(permiso_eliminar)
#Asignarle al usuario recien creado el permiso de consulta de sus datos
rol_por_defecto.permissions.append(permiso_consultar)
flash("El usuario fue creado satisfactoriamente")
redirect("NuevoUsuario")