我正在尝试在我的 Rails 项目中保存签入时创建/更新位置,但是遇到了麻烦。
一个 Checkin belongs_to :location 和一个 Location has_many :checkins
我accepts_nested_attributes_for :location, :allow_destroy => true
在我的签入模型中使用,并尝试在创建签入时创建一个位置,如下所示:
POST "checkin[note]=this-is-great&checkin[user_id]=123&checkin[location_attributes][name]=popeyes&checkin[location_attributes][id]=314" to http://localhost:3000/checkins.json
但是,每次我运行它时,它都会抛出一个错误说
找不到 ID=314 的位置以进行 ID= 的签到
我不确定我在做什么正确..?如果它不存在,我希望它创建具有特定 ID 的位置,如果它确实存在,则更新相同的位置(根据 location_id)。
位置表有一个 id(主键)和名称(varchar)
checkin 表有一个 id(主键,自增)和 note(varchar)
任何人都成功地使用了accepts_nested_attributes_for?