コード例 #1
0
ファイル: user.py プロジェクト: teaQL/onTrack
 def get(self, user_id):
     # Get suer from db
     print(user_id)
     user = User.find_by_id(user_id)
     if not user:
         return {'error': f'User with id {user_id} not found '}, 400
     return {'data': userSchema.dump(user)}
コード例 #2
0
 def post(self, user_id, course_code):
     try:
         user = User.find_by_id(user_id)
         user.add_course(course_code)
     except Exception as e:
         print(e)
         return {'error': 'unable to add course to user'}, 500
     return {'msg': 'Added course to user'}
コード例 #3
0
 def get(self, user_id):
     try:
         user = User.find_by_id(user_id)
         courses = user.get_courses()
         courses_json = coursesSchema.dump(courses)
     except Exception as e:
         print(e)
         return {'error': f'unable to get courses for user {user_id}'}, 500
     return {'data': courses_json}
コード例 #4
0
    def delete(self, user_id, course_code):
        try:
            user = User.find_by_id(user_id)
            user.remove_course(course_code)
        except Exception as e:
            print(e)
            return {'error': 'unable to remove course from user'}, 500

        return {'msg': f'removed course {course_code}'}
コード例 #5
0
ファイル: user_ratings.py プロジェクト: teaQL/onTrack
 def delete(self, user_id):
     try:
         req_json = request.get_json()
         user = User.find_by_id(user_id)
         user.remove_rating(**req_json)
     except Exception as e:
         print(e)
         return {'error': 'Unable to get delete rating for article'}, 500
     return {}, 204
コード例 #6
0
ファイル: user_ratings.py プロジェクト: teaQL/onTrack
    def get(self, user_id):
        try:
            user = User.find_by_id(user_id)
            user_articles = articleRatingsSchema.dump(user.get_articles())

        except Exception as e:
            print(e)
            return {'error': 'Unable to get user rating for article'}, 500
        return {'data': user_articles}
コード例 #7
0
ファイル: user_ratings.py プロジェクト: teaQL/onTrack
 def post(self, user_id):
     try:
         req_json = request.get_json()
         user = User.find_by_id(user_id)
         print(req_json)
         user.add_rating(**req_json)
     except Exception as e:
         print(e)
         return {'error': 'Unable to get user rating for article'}, 500
     return {'msg': 'Rating added'}, 201
コード例 #8
0
ファイル: user.py プロジェクト: teaQL/onTrack
 def put(self, user_id):
     # Editable fields
     req_body = request.get_json(silent=True)
     try:
         user_changes = userSchema.load(req_body)
     except Exception as e:
         print(e)
         return {'error': 'invalid fields to change'}, 400
     # Get the user
     user = User.find_by_id(user_id)
     if not user:
         return {'error': f'User with id {user_id} does not exist'}, 400
     for field, value in user_changes.items():
         setattr(user, field, value)
     user.save()
     return {'msg': 'user details updated'}
コード例 #9
0
    def get(self, user_id): 
        '''
        Get all sesssions belonging to a user 
        optional query parameter of course_code 
        '''
        try: 
            user = User.find_by_id(user_id)
            if 'course_code' in request.args:
                #! Find a single session
                print('*'*30)
                req_sessions = user.get_sessions(request.args['course_code'])
                sessions_json = sessionsSchema.dump(req_sessions)

            else: 
                sessions_json = sessionsSchema.dump(user.get_sessions())

        except Exception as e: 
            print(e)
            return {'error': 'Unable to get sessions'}, 500
        return {'data': 
            sessions_json
        }
コード例 #10
0
def load_user(user_id):
    return User.find_by_id(user_id)