本文整理汇总了Python中lpm.model.Usuario.por_id方法的典型用法代码示例。如果您正苦于以下问题:Python Usuario.por_id方法的具体用法?Python Usuario.por_id怎么用?Python Usuario.por_id使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类lpm.model.Usuario
的用法示例。
在下文中一共展示了Usuario.por_id方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: evaluate
# 需要导入模块: from lpm.model import Usuario [as 别名]
# 或者: from lpm.model.Usuario import por_id [as 别名]
def evaluate(self, environ, credentials):
if is_anonymous().is_met(environ):
self.unmet()
nombre_usuario = credentials["repoze.what.userid"]
usuario = Usuario.by_user_name(nombre_usuario)
if self.id_usuario:
usuario = Usuario.por_id(self.id_usuario)
for r in usuario.roles:
for p in r.permisos:
if p.nombre_permiso.find(u"miembro") >= 0:
if self.id_proyecto:
if r.tipo == "Proyecto" and \
r.id_proyecto == self.id_proyecto:
return
elif self.id_fase:
if r.tipo == "Fase" and \
r.id_fase == self.id_fase:
return
else:
if r.tipo.find("Tipo") >= 0:
ti = TipoItem.por_id(self.id_tipo_item)
if ti and ti.es_o_es_hijo(r.id_tipo_item):
return
#if (r.tipo.find("Tipo") >= 0 and \
# self.id_tipo_item.es_o_es_hijo(r.id_tipo_item)):
# r.id_tipo_item == self.id_tipo_item:
# return
self.unmet(self.message)
示例2: get_all
# 需要导入模块: from lpm.model import Usuario [as 别名]
# 或者: from lpm.model.Usuario import por_id [as 别名]
def get_all(self, *args, **kw):
"""
Retorna todos los registros
Retorna una página HTML si no se especifica JSON
"""
id_usuario = UrlParser.parse_id(request.url, "usuarios")
usuario = Usuario.por_id(id_usuario)
puede_asignar = PoseePermiso("asignar-desasignar rol") \
.is_met(request.environ)
titulo = "Roles Desasignados de Sistema para: %s" % usuario.nombre_usuario
if request.response_type == 'application/json':
return self.table_filler.get_value(usuario=usuario,
asignados=False,
**kw)
if not getattr(self.table.__class__, '__retrieves_own_value__', False):
roles = self.table_filler.get_value(usuario=usuario,
asignados=False,
**kw)
else:
roles = []
tmpl_context.widget = self.table
atras = "/usuarios/"
return dict(lista_elementos=roles,
page=titulo,
titulo=titulo,
columnas=self.columnas,
opciones=self.opciones,
url_action=self.action,
atras=atras,
puede_asignar=puede_asignar)
示例3: asignar_roles
# 需要导入模块: from lpm.model import Usuario [as 别名]
# 或者: from lpm.model.Usuario import por_id [as 别名]
def asignar_roles(self, *args, **kw):
""" Asigna los roles seleccionados a un usuario """
if kw:
pks = []
for k, pk in kw.items():
if not k.isalnum():
continue
pks.append(int(pk))
transaction.begin()
id_user = UrlParser.parse_id(request.url, "nomiembros")
id_proyecto = UrlParser.parse_id(request.url, "proyectos")
user = Usuario.por_id(id_user)
roles = DBSession.query(Rol).filter(Rol.id_rol.in_(pks)).all()
for r in roles:
if r.tipo.find(u"Plantilla") >= 0: #crear rol a partir de plantilla
rol_new = Rol.nuevo_rol_desde_plantilla(plantilla=r,
id=id_proyecto)
rol_new.usuarios.append(user)
else:
r.usuarios.append(user)
transaction.commit()
flash("Roles Asignados correctamente")
else:
flash("Seleccione por lo menos un rol", "warning")
return "./"
示例4: desasignar_roles
# 需要导入模块: from lpm.model import Usuario [as 别名]
# 或者: from lpm.model.Usuario import por_id [as 别名]
def desasignar_roles(self, *args, **kw):
""" Desasigna los roles seleccionados a un usuario """
if kw:
pks = []
for k, pk in kw.items():
if not k.isalnum():
continue
pks.append(int(pk))
transaction.begin()
id_user = UrlParser.parse_id(request.url, "usuarios")
user = Usuario.por_id(id_user)
c = 0
while c < len(user.roles):
if user.roles[c].id_rol in pks:
r = user.roles[c]
if r.nombre_rol == u"Administrador del Sistema" and \
len(r.usuarios) == 1:
#verificamos que haya mas de un administrador
#del sistema
msg = "No puedes eliminar el rol {nr}. Solo existe "
msg += "un {nr}, y es usted."
flash(msg.format(nr=r.nombre_rol), "warning")
return "./"
del user.roles[c]
else:
c += 1
transaction.commit()
flash("Roles Desasignados correctamente")
return "./"
示例5: put
# 需要导入模块: from lpm.model import Usuario [as 别名]
# 或者: from lpm.model.Usuario import por_id [as 别名]
def put(self, *args, **kw):
if "sprox_id" in kw:
del kw["sprox_id"]
if "repita_nuevo_password" in kw:
del kw["repita_nuevo_password"]
if kw["nro_documento"]:
kw["nro_documento"] = int(kw["nro_documento"])
username = request.identity['repoze.who.userid']
usuario = Usuario.by_user_name(username)
id_usuario = UrlParser.parse_id(request.url, "usuarios")
if (usuario.id_usuario != id_usuario):
pp = PoseePermiso('modificar usuario')
if not pp.is_met(request.environ):
flash(pp.message % pp.nombre_permiso, 'warning')
redirect(self.action)
usuario = Usuario.por_id(args[0])
usuario.nombre = kw["nombre"]
usuario.apellido = kw["apellido"]
usuario.email = kw["email"]
usuario.telefono = kw["telefono"]
usuario.nro_documento = kw["nro_documento"]
if kw["nuevo_password"] != None and kw.has_key('cambiar_pass'):
usuario.password = kw["nuevo_password"]
redirect("../")
示例6: post_buscar
# 需要导入模块: from lpm.model import Usuario [as 别名]
# 或者: from lpm.model.Usuario import por_id [as 别名]
def post_buscar(self, *args, **kw):
id_fase = UrlParser.parse_id(request.url, "fases")
id_usuario = UrlParser.parse_id(request.url, "nomiembrosfase")
usuario = Usuario.por_id(id_usuario)
fase = Fase.por_id(id_fase)
puede_asignar = PoseePermiso("asignar-desasignar rol",
id_fase=id_fase).is_met(request.environ)
titulo = u"Roles Desasignados para: %s" % usuario.nombre_usuario
tmpl_context.widget = self.table
buscar_table_filler = MiembrosFaseRolesTableFiller(DBSession)
buscar_table_filler.filtros = kw
roles = buscar_table_filler.get_value(usuario=usuario, asignados=False,
id_fase=id_fase, **kw)
atras = "../../"
return dict(lista_elementos=roles,
page=titulo,
titulo=titulo,
columnas=self.columnas,
opciones=self.opciones,
comboboxes=self.comboboxes,
url_action="../",
atras=atras,
puede_asignar=puede_asignar)
示例7: post_buscar
# 需要导入模块: from lpm.model import Usuario [as 别名]
# 或者: from lpm.model.Usuario import por_id [as 别名]
def post_buscar(self, *args, **kw):
id_proyecto = UrlParser.parse_id(request.url, "proyectos")
id_usuario = UrlParser.parse_id(request.url, "miembros")
usuario = Usuario.por_id(id_usuario)
proy = Proyecto.por_id(id_proyecto)
puede_desasignar = PoseePermiso("asignar-desasignar rol",
id_proyecto=id_proyecto).is_met(request.environ)
titulo = "Roles de: %s" % usuario.nombre_usuario
tmpl_context.widget = self.table
buscar_table_filler = MiembrosProyectoRolesTableFiller(DBSession)
buscar_table_filler.filtros = kw
usuarios = buscar_table_filler.get_value(usuario=usuario,
id_proyecto=id_proyecto, **kw)
atras = "/proyectos/%d/miembros/" % id_proyecto
return dict(lista_elementos=usuarios,
page=titulo,
titulo=titulo,
columnas=self.columnas,
opciones=self.opciones,
comboboxes=self.comboboxes,
url_action="../",
atras=atras,
puede_desasignar=puede_desasignar)
示例8: desasignar_roles
# 需要导入模块: from lpm.model import Usuario [as 别名]
# 或者: from lpm.model.Usuario import por_id [as 别名]
def desasignar_roles(self, *args, **kw):
""" Desasigna los roles seleccionados a un usuario """
if kw:
pks = []
for k, pk in kw.items():
if not k.isalnum():
continue
pks.append(int(pk))
transaction.begin()
id_user = UrlParser.parse_id(request.url, "miembrosfase")
user = Usuario.por_id(id_user)
c = 0
while c < len(user.roles):
r = user.roles[c]
if r.id_rol in pks:
if r.nombre_rol == "Miembro de Fase":
msg = "No puedes eliminar el rol {nr}. Si deseas "
msg += "que el usuario deje de ser miembro, debes "
msg += "hacerlo en la pagina de Miembros de la Fase."
flash(msg.format(nr=r.nombre_rol), "warning")
DBSession.rollback()
return "./"
del user.roles[c]
else:
c += 1
transaction.commit()
flash("Roles Desasignados correctamente")
else:
flash("Seleccione por lo menos un rol", "warning")
return "./"
示例9: asignar_roles
# 需要导入模块: from lpm.model import Usuario [as 别名]
# 或者: from lpm.model.Usuario import por_id [as 别名]
def asignar_roles(self, *args, **kw):
""" Asigna los roles seleccionados a un usuario """
if kw:
pks = []
for k, pk in kw.items():
if not k.isalnum():
continue
pks.append(int(pk))
transaction.begin()
id_user = UrlParser.parse_id(request.url, "usuarios")
user = Usuario.por_id(id_user)
roles = DBSession.query(Rol).filter(Rol.id_rol.in_(pks)).all()
for r in roles:
r.usuarios.append(user)
transaction.commit()
flash("Roles Asignados correctamente")
return "./"
示例10: edit
# 需要导入模块: from lpm.model import Usuario [as 别名]
# 或者: from lpm.model.Usuario import por_id [as 别名]
def edit(self, *args, **kw):
"""Despliega una pagina para modificar usuario"""
username = request.identity['repoze.who.userid']
usuario = Usuario.by_user_name(username)
if usuario.id_usuario != int(args[0]):
pp = PoseePermiso('modificar usuario')
if not pp.is_met(request.environ):
flash(pp.message % pp.nombre_permiso, 'warning')
redirect("/usuarios")
tmpl_context.widget = self.edit_form
user = Usuario.por_id(args[0])
page = "Usuario {nombre}".format(nombre=user.nombre_usuario)
atras = "/usuarios/"
value = self.edit_filler.get_value(values={'id_usuario': args[0]})
value['_method'] = 'PUT'
return dict(value=value,
page=page,
id=args[0],
atras=atras
)