키워드 검색기능. 시퀄라이저 사용.

이재근·2022년 8월 18일
0

const queryData = req.query;
let key = {};
try {
queryData.search === "Northarea"
? (key = {
[Op.or]: [
{
mainAddress: {

            [Op.substring]: "제주시",
          },
        },
        {
          mainAddress: {
            [Op.substring]: "조천읍",
          },
        },
        {
          mainAddress: {
            [Op.substring]: "애월읍",
          },
        },
      ],
    })
  : queryData.search === "Westarea"
  ? (key = {
      [Op.or]: [
        {
          mainAddress: {
            [Op.substring]: "한림읍",
          },
        },
        {
          mainAddress: {
            [Op.substring]: "한경면",
          },
        },
        {
          mainAddress: {
            [Op.substring]: "대정읍",
          },
        },
        {
          mainAddress: {
            [Op.substring]: "안덕면",
          },
        },
      ],
    })
  : queryData.search === "Southarea"
  ? (key = {
      [Op.or]: [
        {
          mainAddress: {
            [Op.substring]: "중문",
          },
        },
        {
          mainAddress: {
            [Op.substring]: "서귀포시",
          },
        },
        {
          mainAddress: {
            [Op.substring]: "남원읍",
          },
        },
      ],
    })
  : queryData.search === "Eastarea"
  ? (key = {
      [Op.or]: [
        {
          mainAddress: {
            [Op.substring]: "구좌읍",
          },
        },
        {
          mainAddress: {
            [Op.substring]: "성산읍",
          },
        },
        {
          mainAddress: {
            [Op.substring]: "표선면",
          },
        },
        {
          mainAddress: {
            [Op.substring]: "우도면",
          },
        },
      ],
    })
  : (key = {});

const hostPost = await hosts.findAll({
  where: key,
  include: [
    {
      model: images,
      attributes: ["hostId", "postImageURL"],
    },
  ],
  order: [["createdAt", "DESC"]],
});

코드 사용 시 댓글을 남겨주세요.
profile
하루 고생하면 코드가 나 대신 일해준다.

0개의 댓글