J'ai deux modèlesRails I18n accepts_nested_attributes_for et error_messages_for
class SurveyResponse
has_many :answers, :class_name => SurveyResponseAnswer.name
accepts_nested_attributes_for :answers
end
class SurveyResponseAnswer
belongs_to :survey_response
validates_presence_of :answer_text
end
Dans mon emboîtées si la validation échoue, je reçois cette erreur affiché à l'écran:
« Réponses réponse texte ne peut pas être vide "
J'ai personnalisé mes noms d'attributs avec succès en utilisant les rails I18n. Il ne se comporte pas exactement comment je m'attendrais bien. Le fichier YML ci-dessous n'affecte pas le nom d'attribut est imprimé dans error_messages_for
en:
activerecord:
models:
survey_response:
answers: "Response"
Mais si à partir du script/console je tente
SurveyResponse.human_attribute_name (« réponses »)
-je obtenir le résultat attendu de "Réponse".
Ce que je voudrais faire est d'avoir le message d'erreur de validation dire:
« texte de réponse de réponse ne peut être vide ». Des idées sur ce que je dois réparer?
en 3.1 a bien fonctionné. Merci! –
En fait, pas très bien: '[DEPRECATION WARNING] La recherche d'espace de noms I18n imbriquée sous "activerecord.attributes.survey_response" n'est plus supportée. Mais en passant par [cette discussion] (https://github.com/rails/rails/issues/1869), il ne semble pas encore y avoir une alternative non obsolète qui fonctionne. –