Отношение по массиву в Laravel - PullRequest
1 голос
/ 12 июня 2019

У меня есть массив author_id. Я хочу получить авторов по идентификаторам, используя отношения. Я уже загрузил издания и издателей, но у автора есть массив.

----------------------------------------------------------------------
| id | title            | author_id      | edition_id | publisher_id |
|----|------------------|----------------|------------|--------------|
| 2  | Web Development  | ["1","3","4"]  | 2          | 1            |
|----|------------------|----------------|------------|--------------|

Пожалуйста, проверьте изображение: -

enter image description here

Пожалуйста, предоставьте предложения, как я могу получить поле столбца массива во взаимосвязи

Ответы [ 2 ]

2 голосов
/ 12 июня 2019

Вам нужно использовать цикл for для выборки авторов с использованием идентификатора

Как у вас есть массив author_id = [1, 3, 4]

, поэтому вам нужно зациклить его на основеколичество массивов author_id

for(i=0; i<= count(author_id); i++){
      //your condition based on the index of for loop
    select author from sometable where author_id[$i] = author
}
2 голосов
/ 12 июня 2019

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

Новая таблица будет содержать author_id и local_id.Таким образом, локальная строка может иметь несколько авторов, и отношение может быть определено в вашей базе данных.

...