Добавление категорий в приложение Ruby on Rails - PullRequest
0 голосов
/ 13 августа 2011

У меня были некоторые проблемы с этим раньше при создании приложений, и я думаю, что я снова начинаю сталкиваться с этим, поэтому я прошу об этом в StackOverflow, чтобы сэкономить мне много времени. Я провел последние несколько недель, настраивая усовершенствованную модель продукта для моей системы. Модель работает точно так, как я хочу, и имеет несколько сложных функций (таких как поиск по солнечному пятну). Я хотел настроить категорию на структуру продукта до того, как начал эту сложную разработку - однако борьба с такими вещами просто отталкивала меня от создания приложения, поэтому я сразу попал в структуру продукта. Теперь у меня есть настройка модели продукта - какой самый простой способ добавить владение категорией, чтобы охватить продукты? (У всех продуктов есть столбец category_id, в котором хранится идентификатор категории их отца) Мой план состоит в том, чтобы индекс категории был списком всех категорий, шоу категории было списком продуктов внутри этой категории, а представление продукта представляло собой представление фактического продукта. Это исключит индекс продукта, поэтому мне придется каким-то образом придумать способ перенести функцию поиска (солнечное пятно) из моего представления индекса в представление категории. Что касается фактического перечисления продуктов - я полагаю, мне придется сделать какой-то частичный? (Я не знаю много об этом).

В основном мои отношения планируются такими: Категория:

has_many :products

продукт:

has_one :category

У моих продуктов есть столбец category_id для хранения идентификатора родительской категории.

Какие-либо советы о том, как установить отношения (категория показывает список продуктов и т. Д.)?

С наилучшими пожеланиями,

Джо

1 Ответ

2 голосов
/ 13 августа 2011

Отношения, подобные тем, которые вам нужны, встроены в Поддержка ActiveRecord . Понимание отношений модели в Rails крайне важно для выполнения в Rails всего, что нетривиально, так что изучайте.

Кроме того, отношения, которые вы ищете, похожи на:

продукт: belongs_to :category

категория: has_many :products

...