В настоящее время я создаю систему обмена файлами для изучения в Laravel.В настоящее время есть возможность загрузить файлы, а затем загрузить их позже.Теперь я хотел бы расширить его так, чтобы один файл мог быть загружен несколькими (но не всеми) лицами.
В настоящее время у меня есть таблица пользователей, а идентификатор пользователя указан в таблице файлов.Таким образом, я знаю, какой файл принадлежит какому пользователю.
Таблица файлов выглядит примерно так:
id | filename | user_id |
1 | doc.php | 2 |
2 | fly.php | 4 |
3 | dog.jpg | 3 |
4 | cat.gif | 2 |
И так далее ... Таким образом, я могу просто проверить, является ли user_idто же самое, что и прошедший проверку подлинности и вошедший в систему пользователь.
Проблема в том, что я не могу понять, как сделать файл доступным для нескольких пользователей (10-20).Должен ли я просто создать новую таблицу, которая будет выглядеть следующим образом:?
user_id | file_id_1 | file_id_2 |
1 | 3 | 6 |
И каждый раз, когда пользователю назначается дополнительный файл, создается новый столбец?
Мне это кажетсяочень плохая схема данных.