Структура базы данных каталога Rails - PullRequest
2 голосов
/ 06 июня 2009

Я создаю «маленькое» персональное веб-приложение в Ruby on Rails. Я настроил его так, что я использую базу данных MySQL.

Идея заключается в том, что я собираюсь хранить и перемещаться по многим видам данных (заметки, закладки, рейтинги фильмов и приложений) с помощью этого приложения. Я хочу индексировать / классифицировать эти данные в структуре псевдо-каталогов. (Структура каталогов существует только в базе данных, а не в реальных каталогах)

например. закладка может быть сохранена в Root -> Bookmark -> Funny -> Keyboard cat

Теперь я видел этот вопрос , но сейчас я не знаю, является ли это решение лучшим способом сделать это в приложении rails. Решение, похожее на решение вопроса, с которым я столкнулся выше, было также тем, что я имел в виду. Но можно также добавить дополнительную таблицу, имеющую отношения между папками и их содержимым.

Вопрос в том, как мне структурировать мои модели и базу данных? («Правильный» путь)

Обновление: (@Dave и другие тегеры) Да, я думал о тегах. И сначала я собирался задать гораздо больший вопрос, но я не смог сделать это в сжатой форме. Дело в том, что также возможно пометить предметы. И на самом деле каталоги являются тегами - можно сказать, что я хочу иметь два способа организации вещей - «структурированные» теги (каталоги) и «бесплатные» теги (ваши старые обычные теги). Но это совсем другая история ...

А пока я просто хочу увидеть «правильный» способ создания модели rails и структуру базы данных для задачи каталога.

1 Ответ

1 голос
/ 06 июня 2009

Звучит так, будто вы хотите серию отношений один-ко-многим, если это действительно имитирует структуру каталогов. Например. Изображения (например, «клавиатурный кот») могут принадлежать только одной категории (например, «смешные»), в то время как в каждой категории может быть много изображений.

Однако вы можете переосмыслить структуру каталогов и выбрать что-то более гибкое, например, теги. Потому что, если «клавиатурный кот» может принадлежать не только «Забавно», это нарушит отношения «один ко многим», которые определяют стандартную структуру, похожую на каталог.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...