군침이 싹 도는 코딩

페이징 처리 하는 법 본문

Python/Flask

페이징 처리 하는 법

mugoori 2023. 1. 6. 13:21

# 먼저 포스트맨에서 Params 에 들어가 offset(시작점) limit(몇개나 가져올지)를 지정해준다

이렇게해서 쿼리 스트링을 만들어준다

 

 

 

 

    @jwt_required()
    def get(self): # 메모 불러오기

        user_id = get_jwt_identity()

        # 클라이언트에서 쿼리스트링보내는 데이터는 request.args 에 들어있다
        
        offset = request.args.get('offset')
        limit = request.args.get('limit')



        # 1. 클라이언트로부터 데이터를 받아온다
        # 없다

        # 2. DB에 저장된 데이터를 가져온다
        try :
            connection = get_connection()

            query = '''select id,title, datetime, content, createdAt, updatedAt
                    from memo
                    where userId = %s
                    order by datetime desc
                    limit ''' + offset +''', '''+ limit +''';''' # 문자열을 쪼개서 변수명을 넣어준다
            
            record = (user_id,)

# GET 메소드를 만들때 쿼리 스트링을 처리하고 싶으면 토큰을 불러오고 그 밑에

request.args.get으로 offset 과 limit를 변수로 받아준다 

그 후 쿼리문을 수정하고 limit 옆은 %s 가 아닌 문자열을 쪼개서 위에 썻던 변수명으로 바꿔준다

레코드는 그대로 user_id만 들어가게한다.

 

 

 

 

 

# 정상적으로 7개를 불러온 모습이다