Привет, ребята.У меня есть следующие модели:
- Категория
- Событие
- Блокировка
- Элемент
- Сайт
- Пользователь
Events
, по сути, является «элементом журнала».Другими словами, они будут хранить, какое действие было выполнено, что Item
, чем User
, в каком Category
.Естественно, когда я думал об этом, я подумал, что у него «один пользователь», «одна категория», «один элемент» и так далее.Однако это будет означать, что в любой строке User
будет внешний ключ для Event
, но это не то, что я хочу.Мне нужен внешний ключ в строке Event
, поскольку Event
просто дает информацию о том, что User
, что Category
и т. Д.
Так что я понимаю, что вместо этого я должен сказатьчто Event
"принадлежит пользователю", "принадлежит категории" и т. д. и что у каждого из них "есть много событий" взамен, верно?Я просто уверен, потому что это не читается логически, как большинство других ассоциаций.Мне не нужно / я не хочу иметь доступ к событию с другой стороны (например, user.event), потому что это не имеет особого смысла.Так что, если я сделаю это, я бы просто добавил belongs_to
вызов, а не has_one
на другой стороне?
Возможно, я разработал это неправильно.
Я в конечном итоге хочу иметь возможностьдля рендеринга «страницы журнала», заполненной строками, описывается строка со следующим описанием:
event.user event.action event.item event.category