【发布时间】:2018-09-23 03:42:01
【问题描述】:
简单地说,我在 Rails 5.2 应用程序中使用 Mongoid 和 Devise。在模型文件中,一个用户has_many :trips 和一个旅行belongs_to :user。提交表单以创建新行程时,保存失败并出现错误“用户不能为空”。我可以通过在保存操作之前设置@trip.user = current_user 来解决问题,并且在数据库和后续查询中看起来都很好,但我不记得以前必须这样做。自从我使用 Rails 做任何实际工作已经有一段时间了(从 1.1 开始,真的 - 是的,那么久),但我不记得必须使用 ActiveRecord 模型来做这件事。我在想在模型中设置关联应该解决这个问题。是否发生了重大变化,或者 Mongoid 有什么不同?在保存之前我确实弄乱了参数哈希(使用trip_params.to_h),因为我需要将字符串转换为数组,但即使在我更改哈希之前,我也看不到任何用户的迹象。
【问题讨论】:
标签: ruby-on-rails mongoid