首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用fields_for时在Rails验证消息中隐藏子记录名称

使用fields_for时在Rails验证消息中隐藏子记录名称
EN

Stack Overflow用户
提问于 2012-07-14 00:01:39
回答 1查看 142关注 0票数 0

我有两个模型,定价和定价细节。为has_many pricing_details定价。我有一个使用form_for的表单,这样我就可以在同一个表单中创建pricing对象和详细信息,并在一次保存调用中保存所有内容。

所有代码都按预期运行,问题是,当我在pricing_details模型上省略一个已验证字段时,验证消息如下:

“定价明细成本年价不能为空”

我的验证是:

代码语言:javascript
复制
def validate_cost
  field_name = PriceType.find(self.price_type_id).name
  if self.cost.blank?
    self.errors.add :cost, field_name + " cannot be blank"
  end
end

我想要的很简单:“年价不能为空”

是否对区域设置进行了一些修改,以便我可以用来抑制子模型和字段名称?我尝试添加到base,如下所示:

代码语言:javascript
复制
self.errors.add :base, field_name + " cannot be blank"

但我只是得到了“定价明细基础年价不能为空”。

EN

回答 1

Stack Overflow用户

发布于 2013-03-13 05:57:11

您可以使用区域设置来更改嵌套字段的名称。请参阅此答案https://stackoverflow.com/a/11129637/18038

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11474104

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档