允许可选 belongs_to 关联的配置在 rail 6 中不起作用
Configuration to allow optional belongs_to association not working in rail 6
在 rails 5 中,我可以使用此设置使 belongs_to
关联可选:
Rails.application.config.active_record.belongs_to_required_by_default = false
但这在 Rails 中似乎不起作用 6. 有没有办法在 Rail 6 中做到这一点?
查看 Rails 5 的新框架默认文件,它具有以下内容
# config/initializers/new_framework_defaults.rb
# Require `belongs_to` associations by default. Previous versions had false.
Rails.application.config.active_record.belongs_to_required_by_default = true
因此 Rails 6
的选项似乎已完全删除。因此,您需要根据具体情况添加 optional: true
。就我而言,在大多数情况下,我结束了重写代码,以便需要关联。
该选项在 Rails6 中仍然有效,但您需要确保在加载默认配置值后设置它,即
config.load_defaults 6.0
最好的地方是config/application.rb
快结束的时候
...
# Don't check for the existence of belongs_to records
config.active_record.belongs_to_required_by_default = false
end
end
在 rails 5 中,我可以使用此设置使 belongs_to
关联可选:
Rails.application.config.active_record.belongs_to_required_by_default = false
但这在 Rails 中似乎不起作用 6. 有没有办法在 Rail 6 中做到这一点?
查看 Rails 5 的新框架默认文件,它具有以下内容
# config/initializers/new_framework_defaults.rb
# Require `belongs_to` associations by default. Previous versions had false.
Rails.application.config.active_record.belongs_to_required_by_default = true
因此 Rails 6
的选项似乎已完全删除。因此,您需要根据具体情况添加 optional: true
。就我而言,在大多数情况下,我结束了重写代码,以便需要关联。
该选项在 Rails6 中仍然有效,但您需要确保在加载默认配置值后设置它,即
config.load_defaults 6.0
最好的地方是config/application.rb
...
# Don't check for the existence of belongs_to records
config.active_record.belongs_to_required_by_default = false
end
end