Создание динамических списков воспроизведения с использованием пользовательских настроек - PullRequest
0 голосов
/ 09 апреля 2011

Я пытаюсь создать веб-приложение, используя ruby ​​на рельсах. В этом проекте пользователи могут искать песни на нашем сайте и создавать свои собственные плейлисты. Приложение также должно генерировать динамические списки воспроизведения на основе лайков и антипатий пользователей. Это моя проблема, я не могу найти простое и эффективное решение, которое не перегружает мою базу данных. Так что, если кто-нибудь может рассказать мне некоторые основные принципы по этому вопросу, о разработке моделей или очень элегантном решении (любая маленькая информация мне очень поможет)

Спасибо

1 Ответ

1 голос
/ 09 апреля 2011

Вы можете связать песню с моделью голосования, которая будет связана с моделью пользователя. Например, модель голосования может иметь логическую колонку типа «нравится» и «не нравится». Таким образом, вы можете зарегистрировать голосование «за» или «против» для каждого пользователя в каждой песне.

Возможно, во всех этих таблицах может быть много строк, но я не понимаю, что вы имеете в виду под "перегружаться". Пока структура ясна, не имеет значения, сколько у вас там данных, для этого и нужна база данных, нет?

class User < ActiveRecord::Base
  has_many :votes
end

class Vote < ActiveRecord::Base
  belongs_to :user
  belongs_to :song
end

class Song < ActiveRecord::Base
  has_many :votes
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...