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')
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")