sqlalchemy 사용시 db object를 jason으로 바꾸는 방법

Computer 관심/Flask|2021. 9. 24. 21:31
반응형

디비에서 얻어온 객체는 딕셔너리 형태로 바꿔줘야 한다. 

여러가지 방법을 시도했는데 가장 쉬운 방법은 아래와 같다.

 

 

플러터에서 객체를 json을 바꾸는 방법과 비슷하다.

디비모델에 as_dict함수를 추가한다.

class User(db.Model):
   def as_dict(self):
       return {c.name: getattr(self, c.name) for c in self.__table__.columns}

그리고 바꾸려는 객체.as_dict()를 하면 response를 할 수 있다.

 

이 방법을 안쓰면 하나하나 {'name':instant.value}와 같은 방식으로 딕셔너리를 만들어서 전달해야한다.

댓글()