3

在执行嵌套模型表单时出现此异常:

ActiveRecord::AssociationTypeMismatch in RecipesController#update 
  Ingredient(#35624480) expected, got Ingredient(#34767560)

涉及的模型是配方和成分。配方has_many 和accepts_nested_attributes_for :ingredients,其中belongs_to :recipe。

我在尝试 _destroy (=1) 用于配方编辑/更新的嵌套成分表单上的一种预先存在的成分时遇到此异常。

这没有什么意义,主要是因为关联类型符合预期(由异常自己承认)。

更没有意义的是它在功能测试中工作得很好

此外,如果我重新发布表单(通过更新时的浏览器刷新),它有时会起作用。如果我重新启动(开发)网络服务器,它也将起作用。

有什么想法可能导致这种情况,或者我应该寻找什么?

4

2 回答 2

6

这通常意味着在您的环境/xxx 文件中“rails 无法成功重新加载一次”,您可以将其更改为不重新加载,或允许它重新加载。

于 2010-05-24T21:45:30.283 回答
-1

这有时可以通过添加正确的要求来解决,从代码中使用类的位置开始

于 2010-12-31T19:11:08.563 回答