Batman.js:未找到多态关联的相关模型未定义

时间:2012-12-28 22:19:03

标签: polymorphic-associations batman.js

我遇到了一个试图在Batman模型上实现多态关联的问题。我在控制台中收到此错误:

  

未找到多态关联的相关模型未定义。

我很难找到我错的地方。我应该在哪里找到丢失的部分?

我的模型看起来像这样:

class Admin.Product.PopularCollectables extends Batman.Model
  @belongsTo 'collectable', polymorphic: true

class Admin.Item extends Batman.Model
  @hasOne 'popular_collectable', as: 'collectable'

2 个答案:

答案 0 :(得分:0)

我可以通过在父级Batman Model实例中将belongs_to关系嵌入到来自Rails的客户端来解决此问题:

has_many

答案 1 :(得分:0)

当Batman在关联中加载相关模型时,它会检查命名空间。默认情况下,命名空间为Batman.currentApp(在您调用MyApp.run()后是您的应用程序),但您也可以在声明关联时传递命名空间:

class Admin.Item extends Batman.Model
  @hasOne 'popular_collectable', as: 'collectable', namespace: Admin.Product

这样,蝙蝠侠将在Admin.Product而不是Admin上寻找PopularCollectable