У меня есть модель Project, которая принимает вложенные атрибуты для Task.
class Project < ActiveRecord::Base
has_many :tasks
accepts_nested_attributes_for :tasks, :allow_destroy => :true
end
class Task < ActiveRecord::Base
validates_uniqueness_of :name end
Валидация уникальности в модели задачи дает проблему при обновлении проекта.
При редактировании проекта я удаляю задачу T1, а затем добавляю новую задачу с тем же именем T1, проверка уникальности ограничивает сохранение проекта.
params hash выглядит примерно как
task_attributes => { {"id" =>
"1","name" => "T1", "_destroy" =>
"1"},{"name" => "T1"}}
Проверка выполнения задачи выполняется до уничтожения старой задачи. Следовательно, проверка не выполняется. Любая идея, как проверить, чтобы она не рассматривала задачу, которую нужно уничтожить?