def group_finder(userid, request): from whoahqa.models import User principals = [] principals.append("u:{}".format(userid)) try: user = User.get(User.id == userid) except NoResultFound: return None else: if user.group: principals.append(user.group.name) principals.extend(GROUP_PERMISSIONS.get(user.group.name, [])) return principals
def handle_submission(self): from whoahqa.models import User map_data = ClinicRegistrationHandler.parse_data( self.submission.raw_data) clinic = Clinic(name=map_data['clinic_name'], code=map_data['clinic_code']) # check is user exists user = None try: user = User.get(User.id == map_data['user_id']) except NoResultFound: pass else: clinic.user = user finally: clinic.save() # if no user, raise UserNotFound if user is None: raise UserNotFound("User with id {} was not found".format( map_data['user_id']))
def get_request_user(request): user_id = request.authenticated_userid try: return User.get(User.id == user_id) except NoResultFound: return None
def test_get_returns_record_filtered_by_criterion(self): user = User(id=1) with transaction.manager: DBSession.add(user) user = User.get(User.id == 1) self.assertIsInstance(user, User)