Как сделать отношение в двух сущностях, если одна сущность имеет данные массива - PullRequest
0 голосов
/ 20 февраля 2020

У меня есть две таблицы с именами users и requests в базе данных MYSQL. Здесь приведен json пример каждой модели секвелизации, которую мне нужно сопоставить с моими моделями:

пользователь:

{
   "username": "",
   "profileImage": "",
   "deleted": false,
   "active": false,
   "id": 9,
   "uuid": "9a6d5a15-8e11-42aa-ac56-0bec272c9287",
   "firstName": "M",
   "lastName": "Aslam",
   "email": "hang@outlook.com",
   "isGuest": false
}

и request

{
  "id": 5,
  "requestUUID": "ab966593-95e5-4fd8-b433-01b116e3edee",
  "socialLinks": [
    {
      "url": "https://synavos.com",
      "socialLinks": [
        {
          "platform": "facebook",
          "handle": "https://www.facebook.com/synavos/"
        },
        {
          "platform": "instagram",
          "handle": "https://www.instagram.com/synavosbusiness/"
        },
        {
          "platform": "youtube",
          "handle": "https://www.youtube.com/channel/UCrZxxAV_OiRb9N3wIe3N94w"
        }
      ]
    },
    {
      "url": "https://www.confiz.com/",
      "socialLinks": [
        {
          "platform": "facebook",
          "handle": "http://www.facebook.com/ConfizCareers"
        },
        {
          "platform": "youtube",
          "handle": "https://www.youtube.com/channel/UCG64lwoDIbwtkZK8E_s140A"
        }
      ]
    }
  ]
}

, в то время как у пользователя может быть много запросов, в то время как запрос принадлежит одному пользователю.

1 Ответ

1 голос
/ 20 февраля 2020

если отношение одно к mant ( пользователь может иметь много запросов, в то время как запрос принадлежит одному пользователю ), вы можете добавить в поле request a user_id. тогда вы можете искать все запросы пользователя по SELECT * FROM requests where user_id = ?, [user.id], и если вы хотите найти пользователя по конкретному c запросу, используйте SELECT ALL FROM users WHERE id = ?, [request.user_id]

...