Ruby on rails 4 尽管包括“以下内容”:自动保存=>;“真的”;在我的模型中,Rails并没有保存我的Association
我在数据库中使用的是Rails 4.2.3,我有一个“my_objects”表,其中的“address_id”是返回“addresses”表的外键。我的app/models/my_object.rb文件中有这个Ruby on rails 4 尽管包括“以下内容”:自动保存=>;“真的”;在我的模型中,Rails并没有保存我的Association,ruby-on-rails-4,associations,belongs-to,autosave,Ruby On Rails 4,Associations,Belongs To,Autosave,我在数据库中使用的是Rails 4.2.3,我有一个“my_objects”表,其中的“address_id”是返回“addresses”表的外键。我的app/models/my_object.rb文件中有这个 class MyObject < ActiveRecord::Base belongs_to :address, :autosave => true, dependent: :destroy attr_accessor :address, :hour, :minute
class MyObject < ActiveRecord::Base
belongs_to :address, :autosave => true, dependent: :destroy
attr_accessor :address, :hour, :minute, :second, :location
但是,在保存表单时,请使用以下参数将表单提交到“create”方法
{"utf8"=>"✓", "my_object"=>{"id"=>"", "name"=>"DaveRace2", "day"=>"07/06/2016", "distance"=>"3", "distance_unit_id"=>"4", "hour"=>"00", "minute"=>"12", "second"=>"05", "address"=>{"city"=>"austin"}, "my_object_times_attributes"=>{"0"=>{"overall_rank"=>"", "age_group_rank"=>"", "gender_rank"=>"", "time_in_ms"=>"725000"}}}, "state"=>"AR", "country"=>{"country_id"=>"233"}, "commit"=>"Save"}
在我的“my_objects”表中未创建地址对象。所有其他字段都已填充,但address_id列为空。我怎样才能解决这个问题呢?在我最初的观察中
"address"=>{"city"=>"austin"}
在上面的散列中,地址的类型为“text”
您提到了外键“address_id”,它可能是“integer”
可能存在数据类型问题。重复的
#address
定义会不会妨碍您?您已经将其设置为关联(使用所属的)和实例变量(使用属性访问器)
噢,attr\u accessor
应该是attr\u accessor
?谢谢您描述这个问题,但我不清楚您列出的实际“答案”是什么。我需要做些什么来纠正这个问题?您在address.rb模型中设置了has_many:my_对象了吗?我设置了“has_one”,我的地址推理只能与一个“my_对象”关联
"address"=>{"city"=>"austin"}