У меня есть очень специфический сценарий в моем приложении, где пользователь должен назначить REGIONS на TERRITORY.Обновление вложенного ресурса в Rails с изменением его родителя
Так что в моих маршрутах файл я объявил вложенную ресурс:
resource Territory
resource Region
end
И в модели края у меня есть:
class Territory
has_many :regions, :dependent => :destroy
accepts_nested_attributes_for :regions
end
В этом случае мне нужно пользователю, чтобы иметь возможность повторно асинговые регионы между территориями, просто обновив территорию region_id в модели региона.
Итак, если я создам территорию под названием «Восток», а затем присвою ей регионы «Нью-Йорк» и «Нью-Джерси», я смогу создать другую территорию, а затем присвоить ей «Нью-Йорк» и приложение должно только изменить территорию region_id региона на новую.
Вся логика находится в контроллере территорий (на самом деле у меня нет контроллера регионов), есть небольшой статический набор возможных регионов (испанские провинции), и пользователь может добавлять или удалять регионы при редактировании территории. Мне нужно, чтобы пользователь добавлял регион на территорию, и этот регион уже был назначен на другую территорию, вместо того, чтобы создавать новый регион, я бы хотел, чтобы рельсы меняли территорию region_id региона.
Всякий раз, когда я пытаюсь сделать это я получаю следующее сообщение об ошибке:
Не удалось найти область с ID = 101 для территории с ID = 14
Любая помощь?
Это не то, что мне нужно. Я контролирую объединение территорий и регионов в контроллере территорий. Например, когда пользователь редактирует территории, он может добавлять или удалять из него регионы. –