Я посмотрел на существующие вопросы и из-за различий не могу найти хорошего решения о том, как обрабатывать habtm с древовидной иерархией категорий. actions-as-taggable-on подразумевает, что код знает контексты, которые я не хочу. Это неоднократно задавалось на этом и других веб-сайтах, но на самом деле еще не было полного ответа.
В основном у меня есть набор категорий с одноуровневой иерархией:
- Корневая категория 1
- Подкатегория 3
- Подкатегория 4
- Корневая категория 2
- Подкатегория 5
- Подкатегория 6
Часть формы несколько проще. Я перечисляю все корневые категории, затем для каждого нахожу детей. Это подходит только для одноуровневой иерархии и не является оптимальным для моих потребностей, поскольку я предпочел бы иметь почти бесконечный уровень (т. Е. Решение, которое не зависит от уровня вложенности), хотя и не обязательно, если он добавляет слишком много сложности.
По большей части я не уверен, что делать дальше. На данный момент я могу получить простой хэш связанных категорий, но нет иерархии. Решения с вложенными категориями, которые я видел, не будут работать в контексте habtm, а скорее будут работать с полным деревом.