Exemplo n.º 1
0
    def post(self):
        data = parserRegister.parse_args()
        if UserModel.find_by_email(data['email']):
            return {
                'message':
                'User with email {} already exists'.format(data['email'])
            }, 409

        if not fullmatch(r"[^@]+@[^@]+\.[^@]+", data['email']):
            return {
                'message':
                'Email address {} is not valid'.format(data['email'])
            }, 400

        new_user = UserModel(email=data['email'],
                             password=UserModel.generate_hash(
                                 data['password']),
                             model_id=uuid.uuid4().hex)

        try:
            new_user.save_to_db()
            new_user.create_model(json.loads(data['train']))
            return {
                'message': 'User {} was created'.format(data['email']),
            }
        except Exception as e:
            print(e)
            return {'message': 'Something went wrong'}, 500