gpt4 book ai didi

ruby-on-rails - Rails I18n accepts_nested_attributes_for和error_messages_for

转载 作者:行者123 更新时间:2023-12-03 13:38:55 25 4
gpt4 key购买 nike

我有两个模型

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


如果验证失败,则以嵌套形式出现在屏幕上:

“答案答案文本不能为空”

我已经使用Rails I18n成功地自定义了属性名称。它的行为并不完全符合我的期望。以下yml文件不会影响在error_messages_for中打印属性名称的方式

en: 
activerecord:
models:
survey_response:
answers: "Response"


但是如果从脚本/控制台我尝试
SurveyResponse.human_attribute_name(“ answers”)

我得到了“响应”的预期结果。

我想做的是让验证错误消息说:

“响应答案文本不能为空”。有什么需要解决的想法吗?

最佳答案

试试这个:

en: 
activerecord:
models:
survey_response:
answers:
answer_text: "Response"


我正在使用Rails 3,并且对我有用(我的i18n文件有点不同,使用“属性”而不是模型。我不知道这在2.3中是否有效)

en: 
activerecord:
attributes:
survey_response:
answers:
answer_text: "Response"


在此之前,我试图在yml中创建一个名为“ answers_answer_text”的属性,但是该属性无法正常工作。

我希望这能解决您的问题。

关于ruby-on-rails - Rails I18n accepts_nested_attributes_for和error_messages_for,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3058968/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com