ruby-on-rails - 仅在生产环境中添加验证错误

标签 ruby-on-rails validation

我遇到了与验证相关的问题。然而,验证错误仅存在于生产环境中并且没有意义。

详细信息:通过 AJAX 提交表单创建新的 stop 实例后,由于 Stop#create 操作中 @stop.save 失败,我返回 Stop#new。阻止停止保存的错误是由

引起的
  1. 缺少安装程序(安装程序必须存在) - 停止belongs_to安装程序,但是 没有验证规则检查是否存在父设置
  2. 缺少User结束(User结束必须存在) - 停止belongs_to user_ending,但同样没有验证规则来强制user_ending存在

我无法在开发环境中复制相同的错误,其中应用程序正在接受新的停止而没有验证错误。

有人可以指出我可能的原因吗?我正在尝试在生产环境中调试一些东西,也欢迎对此提出任何建议。

最佳答案

好吧,也许您正在使用 Rails 5,如果是这样的话,默认情况下所有 belongs_to 关联都是必需的。要选择退出,您应该这样声明:

belongs_to :setup, optional: true
belongs_to :user_ended, optional: true

关于ruby-on-rails - 仅在生产环境中添加验证错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46819099/

相关文章:

javascript - nodejs 流可读卡在第一个可读对象

ruby-on-rails - 当我在同一页面中输入登录和注册表单时如何显示设计错误消息

c# - 基于 XSD 架构的 Wpf XmlDataProvider 验证

angularjs - 当所有输入都是空白时,Angular 表单是 $valid,为什么?

html - 隐藏一个 DIV [Rails]

ruby-on-rails - 在 Heroku 上手动配置 NewRelic 与使用插件有什么区别?

php - AngularJS 表单验证 - 跳过预填充的输入字段

javascript - jquery.validator 和一页上的两个联系表格将在提交时验证空的一个

javascript - Angular.Js 中 Array.data 的定义是什么

ruby-on-rails - 使用 Rails I18n 翻译 Ruby 枚举符号?