validates_uniqueness_of em trilhos de modelo aninhado destruídos
Eu tenho um modelo de projeto que aceita atributos aninhados para a tarefa.
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
A validação de exclusividade no modelo de tarefas apresenta problemas ao atualizar o Project.
Na edição do projeto, excluo uma tarefa T1 e adiciono uma nova tarefa com o mesmo nome T1, a validação da exclusividade restringe a gravação do projeto.
params hash parece algo como
task_attributes => { {"id" =>
"1","name" => "T1", "_destroy" =>
"1"},{"name" => "T1"}}
A validação da tarefa é feita antes de destruir a tarefa antiga. Portanto, a validação falha. Alguma idéia de como validar para que não considere a tarefa a ser destruída?