2015-12-19 5 views
0

Предположим, у меня есть две модели, песни и пользователи, и я хочу, чтобы пользователи любили песни.Подключить таблицу к массиву идентификаторов: PSQL

Один из способов сделать это - создать таблицу соединений между пользователями в качестве песен, назовем ее избранными. Каждая строка этой таблицы имеет только идентификатор пользователя и идентификатор песни и собственный идентификатор. У меня есть опыт работы с этим методом, и он отлично работает, насколько я знаю.

Однако я думал, что второй способ, которым вы могли бы реализовать избранное, - это добавить столбец в пользовательскую модель, состоящую из массива идентификаторов песни. Каждый идентификатор будет соответствовать песне, которую пользователь предпочитает.

Мне интересно, какие из этих решений предпочтительнее и почему.

+0

Join Table - лучший способ, поскольку он совместим, когда расширяется структура базы данных. –

+0

Не могли бы вы пойти более подробно, возможно? Вы хотите сказать, что если бы я добавил больше моделей, предпочтительной была бы таблица соединений? Если да, то почему? – solowt

+0

Если вы перейдете с помощью таблицы соединений, вы можете указать на нее. Но для CSV это невозможно. –

ответ

0

Если ваш сайт имеет огромное количество трафика, тогда вы должны пойти с materialized views базой данных.