sequelize migrate 진행시 pk 설정을 잘 해두지 않으면 오류 발생함
페이지 네이션 구현
...
const placesSplit = await Places.findAll({
where: { city }, // 도시 조건 의문 해결 cityID를 지역 쿼리로 생각하자
order: [["createdAt", "DESC"]], // createdAt 역순으로 정렬
offset: splitNumber * (splitPageNumber - 1), // * (page - 1) 페이지당 게시글 수만큼 건너뛰기
limit: splitNumber, // 페이지당 게시글 수만큼 가져오기
attributes: ["pictures", "name", "star", "placeId"],
});
...
...
pictures: !ele.pictures
? ""
: ele.pictures.substring(0, 4) == "http"
? ele.pictures.split(",")
: [ele.pictures.split(",").slice(0, 2).join(",")],
...
const messages = {
"string.base": "이 필드는 문자열로 이루어져야 합니다.",
"string.empty": "이 필드는 비어 있을 수 없습니다.",
"any.required": "이 필드는 필수입니다.",
};
const schema = Joi.object({
splitPageNumber: Joi.string().messages({
...messages,
"string.base": "cityID 필드는 숫자로 이루어져야 합니다.",
}),
city: Joi.string().messages({
...messages,
"string.base": "city 필드는 문자열로 이루어져야 합니다.",
}),
splitNumber: Joi.string().messages({
...messages,
"string.base": "splitNumber 필드는 숫자로 이루어져야 합니다.",
}),
});
const validate = schema.validate(
{
splitPageNumber: splitPageNumber,
city: city,
splitNumber: splitNumber,
},
{ abortEarly: false }
);