Ruby on rails Rails 3-有许多关联未保存(TypeError)
商店有许多物品,一件物品属于商店 我开了一家新店,把它存起来,一切都好。我查一下,我可以打电话给你。上面有项目Ruby on rails Rails 3-有许多关联未保存(TypeError),ruby-on-rails,ruby-on-rails-3,activerecord,Ruby On Rails,Ruby On Rails 3,Activerecord,商店有许多物品,一件物品属于商店 我开了一家新店,把它存起来,一切都好。我查一下,我可以打电话给你。上面有项目 ruby-1.9.2-p290 :063 > s.items Item Load (0.3ms) SELECT "items".* FROM "items" WHERE "items"."store_id" = 12 => [] 但是当我尝试调用create或valid时?它返回以下内容: ruby-1.9.2-p290 :064 > s.items.cr
ruby-1.9.2-p290 :063 > s.items
Item Load (0.3ms) SELECT "items".* FROM "items" WHERE "items"."store_id" = 12
=> []
但是当我尝试调用create或valid时?它返回以下内容:
ruby-1.9.2-p290 :064 > s.items.create
Store Load (0.7ms) SELECT "stores".* FROM "stores" WHERE "stores"."id" = 12 LIMIT 1
TypeError: Cannot visit Store
我以前从未见过下面的错误,所以它让我头疼
编辑:删除并重新混合后,仍然可以获得以下内容:
ruby-1.9.2-p290 :008 > Item.create(:store_id => 5)
Store Load (0.2ms) SELECT "stores".* FROM "stores" WHERE "stores"."id" = 5 LIMIT 1
TypeError: Cannot visit Store
万一有人碰到这个问题, 事实证明,这是“项目”模型的验证问题。最初,我设置了以下内容:
validates :name, :presence => true, uniqueness => { :scope => :store }
范围刚刚设置为:store。结果我需要明确声明:store\u id:
validates :name, :presence => true, uniqueness => { :scope => :store_id }
我有另一个有很多,属于协会(同一个项目),是所有的小马和独角兽工作。我不明白这是怎么回事。这看起来像是来自阿雷尔的错误