Я пытаюсь решить довольно распространенную (как я думал) задачу.
Существует три модели:
class Product < ActiveRecord::Base
validates :name, presence: true
has_many :categorizations
has_many :categories, :through => :categorizations
accepts_nested_attributes_for :categorizations
end
class Categorization < ActiveRecord::Base
belongs_to :product
belongs_to :category
validates :description, presence: true # note the additional field here
end
class Category < ActiveRecord::Base
validates :name, presence: true
end
Мои проблемы начинаются, когда дело доходит до нового продукта /Форма редактирования.
При создании товара мне нужно проверить категории (с помощью флажков), к которым он принадлежит.Я знаю, что это можно сделать, создав флажки с такими именами, как «product [category_ids] []».Но мне также нужно ввести описание для каждого из проверенных отношений, которое будет сохранено в модели соединения (Категоризация).
Я видел эти прекрасные Railscasts на сложных формах, флажки habtm и т. Д. Я искалStackOverflow вряд ли.Но мне это не удалось.
Я нашел один пост , в котором описана почти та же проблема, что и у меня.И последний ответ имеет какой-то смысл для меня (похоже, это правильный путь).Но это на самом деле не работает хорошо (то есть, если проверка не проходит).Я хочу, чтобы категории отображались всегда в одном и том же порядке (в новых / редактируемых формах; до / после проверки) и чтобы флажки оставались там, где они были, если проверка не пройдена и т. Д.
Любые мысли приветствуются.Я новичок в Rails (переход с CakePHP), поэтому, пожалуйста, наберитесь терпения и напишите как можно более подробно.Пожалуйста, укажите мне правильный путь!
Спасибо.:)