1

suppose donc je les modèles personne et enfant:Ignorer l'échec de validation lors de l'utilisation de accept_nested_attributes_for (c'est-à-dire empêcher l'annulation)?

class Person < ActiveRecord::Base 
    has_many :children 
    accepts_nested_attributes_for :children 
end 

class Child < ActiveRecord::Base 
    belongs_to :parent, :class_name => "Person" 
    validates_presence_of :name 
end 

Maintenant, quand j'utilise une forme imbriquée et enregistrer une personne avec 2 nouveaux enfants, toute l'opération échouera si l'un des enfants ne parvient pas à valider (c.-à- ça va revenir en arrière). Comment puis-je ignorer cet échec de validation et juste enregistrer la 1 personne et 1 enfant qui sont valides? Je ne veux pas que toute la transaction échoue car 1 enfant a échoué à la validation. Je veux simplement enregistrer les enregistrements valides ...

Aide beaucoup apprécié, merci!

P.S. en utilisant :reject_if sinon une option pour moi parce que je dois pouvoir accéder aux enregistrements invalides jusqu'au moment où je l'enregistre dans la base de données (quand je veux rejeter ceux qui restent invalides)

Répondre

0

Vous pourriez résoudre sans "accepte_nested_attributes_for: children" et enregistre les objets individuels dans votre contrôleur séparément ...

Questions connexes