У меня есть штаты, в которых есть много городов (assign_to: штат), у которых много предприятий (own_to: city).
Государство также ... has_many: предприятия,: через =>: города
На моем сайте все управляется с точки зрения бизнеса. Когда новый Бизнес создается / обновляется, создается штат / город, если он еще не существует. Это происходит в вызове: before_save.
У меня проблемы с удалением состояний / сайтов при обновлении бизнеса. Если штат / город, в котором находится компания, изменяется (опять же, это происходит из формы редактирования бизнеса), и в старом штате / городе больше нет предприятий, которые я хочу уничтожить. Я пытался сделать это в вызовах after_save, но они обернуты в транзакции, и даже если я назначу переменные для имен старого штата / города, они, похоже, меняются на новый штат / город в течение транзакции. Это безумие! Я использовал вызовы «put», чтобы напечатать переменные в некоторых местах моей бизнес-модели, и наблюдал, как переменные менялись во время сохранения. Это было неприятно.
Итак, сейчас я обращаюсь к этому с контроллера, но это кажется хакерским.
Вот мой код.
http://pastie.org/648832
Кроме того, я хотел бы получить любую информацию о том, как лучше структурировать все это.
Спасибо