class FoodRecordbreakfastResource(Resource):
@jwt_required()
def get(self) :
date_str = request.args.get('date')
date = datetime.strptime(date_str, '%Y-%m-%d').date()
user_id = get_jwt_identity()
try:
connection = get_connection()
query = f'''SELECT *
FROM foodRecord
WHERE mealtime = 1 AND date = '{date}' AND userId = {user_id};'''
cursor = connection.cursor(dictionary=True)
cursor.execute(query)
result_list = cursor.fetchall()
cursor.close()
connection.close()
except Error as e:
print(e)
cursor.close()
connection.close()
return {"error": str(e)}, 500
return {"result": "success",
"items": result_list,
"count": len(result_list)}, 200
datetime.date 타입은 기본적으로 JSON 직렬화가 불가능합니다. 따라서, json.dumps()를 사용하여 JSON 직렬화할 때 default 매개변수를 지정해줘야 합니다.
예를 들어, datetime.date를 문자열로 직렬화하려면 default 매개변수에 str() 함수를 지정하면 됩니다.
---------------------------------------------------------------------------------------------------------------------------------------------------------------
return {"result": "success",
"items": json.loads(json.dumps(result_list, default=str)),
"count": len(result_list)}, 200
'오류' 카테고리의 다른 글
안드로이드 스튜디오 import 오류 (0) | 2023.03.24 |
---|---|
java.lang.NullPointerException 에러 (0) | 2023.01.27 |
android.content.res.Resources$NotFoundException: String resource ID #0x1 애러 (0) | 2023.01.27 |
serverless lambda에 배포시 오류 cloudwatch로 확인후requirements에 라이브러리 설치 (0) | 2023.01.11 |
ParserError: Error tokenizing data. C error: Expected 23 fields in line 1149094, saw 41 (1) | 2023.01.03 |