-
Notifications
You must be signed in to change notification settings - Fork 2
Sequelize 데이터 처리 방법
J154_이윤성 edited this page Nov 15, 2021
·
1 revision
Sequelize를 사용하여 데이터베이스에서 뽑아낸 데이터들은 각 테이블의 타입을 가지고 있었습니다.
그래서 뽑아낸 데이터들을 저희가 원하는대로 처리하는 과정이 타입스크립트에서 매우 힘들었습니다.
저희는 2가지 방법을 사용하여 주로 데이터를 처리하였습니다.
const query_to = {
attributes: ["from", "to", "state"],
include: [
{
model: Users,
as: "info",
attributes: [["uid", "id"], "image", "location", "sex", "age", "info"],
},
],
where: {
to: uid,
},
};
const result_to = await Request.findAll(query_to as object);
export const findTeam = async ({ gid }: { gid: number }) => {
const query = {
raw: true,
where: { gid },
include: [
{
model: Users,
as: "member",
attributes: ["uid", "image", "location", "age", "sex"],
},
],
};
const teamInfos = await Team.findAll(query as object);
const memberInfo = (teamInfos as unknown as infoAttribute[]).map((info: infoAttribute) => {
return { id: info["member.uid"], image: info["member.image"], location: info["member.location"], age: info["member.age"], sex: info["member.sex"] };
});
- 그런데 위의 방법이 맞다는 확신이 들지 않아 멘토님께 조언을 구하고 싶습니다.