Ho due modelliRails I18n accepts_nested_attributes_for e 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
Nel mio formato nidificato se la convalida non riesce ottengo questo errore visualizzato sullo schermo:
"risposte risposta di testo non può essere vuoto "
Ho personalizzato i nomi degli attributi in qualche modo utilizzando correttamente i rail I18n. Non si comporta esattamente come mi aspetterei comunque. Il file yml di seguito non influisce come il nome dell'attributo viene stampato in error_messages_for
en:
activerecord:
models:
survey_response:
answers: "Response"
Ma se da script/console provo
SurveyResponse.human_attribute_name ("risposte")
ottengo il risultato atteso di "Risposta".
Quello che mi piacerebbe fare è avere il messaggio di errore di convalida dicono:
"testo della risposta di risposta non può essere vuoto". Qualche idea su cosa devo riparare?
ha funzionato bene in 3.1. Grazie! –
In realtà, non così bene: '[AVVISO DI AVVISO] La ricerca di spazi dei nomi I18n annidati sotto "activerecord.attributes.survey_response" non è più supportata'. Ma passando [a questa discussione] (https://github.com/rails/rails/issues/1869), sembra che non ci sia ancora un'alternativa non completamente deprecata. –