据我所知,Rails 5中的新默认值要求belongs_to关联存在.我用这个关联建立了一个模型,但问题是当关联字段为空时我没有得到状态验证错误.相反,我得到一个数据库Null Validation错误,因为我将_id列设置为null. (PG :: NotNullViolation因为我使用Postgres)
这种行为是否正常?我的意思是我不应该只得到rails错误?
顺便说一句,当我为该字段添加状态验证时,它按预期工作.
解决方法
根据问题
weird behaviour of config belongs_to_required_by_default,看起来你的其他宝石介入ActiveRecord :: Base并导致错误.
该问题的解决方法之一是移动线
config.active_record.belongs_to_required_by_default = true
从初始化程序直接进入application.rb.
这对我很顺利.