Я пытаюсь настроить правильный дизайн базы данных, но я застрял.
Вот что я пытаюсь сохранить.
Каждый пользователь может определить список истории голосования из imdb в виде this .
Два пользователя могут определять один и тот же список.
Сначала я хочу сохранить каждый список как imdb_vote_history_list
- список.
class ImdbVoteHistoryList < ActiveRecord::Base
has_and_belongs_to_many :vote_history_list
has_and_belongs_to_many :movies
# Fields
# id (Integer) - defined by the user
end
Каждый список должен быть уникальным и определяется по его идентификатору (указанному в ссылке).
Каждый список имеет и принадлежит многим фильмам, как в коде выше.
Каждый пользователь должен иметь возможность выбрать имя для каждого списка.
Поэтому вместо того, чтобы сказать
Каждый список imdb_vote_history_list принадлежит пользователю
Я создаю новое отношение с именем vote_history_list
.
class VoteHistoryList < ActiveRecord::Base
has_and_belongs_to_many :imdb_vote_history_lists
belongs_to :user
# Fields
# name (String)
end
Здесь пользователь может выбрать любое имя для списка без вмешательства в имена других пользователей.
Это хороший способ хранения данных?