Supprimer la «base» dans le texte d'erreur pour la validation personnalisée des attributs imbriqués de rails
-
30-10-2019 - |
Question
J'ai les modèles suivants:
class Evaluation < ActiveRecord::Base
attr_accessible :product_id, :description, :evaluation_institutions_attributes
has_many :evaluation_institutions, :dependent => :destroy
accepts_nested_attributes_for :evaluation_institutions, :reject_if => lambda { |a| a[:token].blank? }, :allow_destroy => true
validate :requires_at_least_one_institution
private
def requires_at_least_one_institution
if evaluation_institution_ids.nil? || evaluation_institution_ids.length == 0
errors.add_to_base("Please select at least one institution")
end
end
end
class EvaluationInstitution < ActiveRecord::Base
attr_accessible :evaluation_institution_departments_attributes, :institution_id
belongs_to :evaluation
has_many :evaluation_institution_departments, :dependent => :destroy
accepts_nested_attributes_for :evaluation_institution_departments, :reject_if => lambda { |a| a[:department_id].blank? }, :allow_destroy => true
validate :requires_at_least_one_department
private
def requires_at_least_one_department
if evaluation_institution_departments.nil? || evaluation_institution_departments.length == 0
errors.add_to_base("Please select at least one department")
end
end
end
class EvaluationInstitutionDepartment < ActiveRecord::Base
belongs_to :evaluation_institution
belongs_to :department
end
J'ai un formulaire d'évaluation qui comprend des attributs imbriqués pour l'évaluation de l'institution et de l'évaluation dans la mise en place de la mise en place, donc mon formulaire est imbriqué à 3 niveaux. Le 3e niveau me pose un problème.
Les erreurs sont déclenchées comme prévu, mais lorsque l'erreur se déclenche pour require_at_least_one_department, le texte se lit
Base des institutions d'évaluation Veuillez sélectionner au moins un département
Le message doit lire "Veuillez sélectionner au moins un département".
Comment supprimer la «base des institutions d'évaluation»?
Pas de solution correcte
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow