问题标签 [polymorphic-associations]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
10473 浏览

ruby-on-rails - Ruby on Rails: :include 与子模型的多态关联

使用多态关联时,是否可以在仅存在于某些类型中的子模型上运行包含?

例子:

在视图中,我将想做类似的事情:

因此,我想在加载 c 时急切加载到期时间,因为我知道我将需要它们中的每一个。有什么办法吗?仅仅定义一个常规的 :include 就会出错,因为并非所有封闭的类型都有子模型到期。

0 投票
12 回答
29871 浏览

ruby-on-rails - Rails 多态关联与同一模型上的多个关联

我的问题与这个问题基本相同: Polymorphic Association with multiple associations on the same model

但是,正如稍后的评论者所说明的那样,建议/接受的解决方案不起作用。

我有一个在我的应用程序中使用的 Photo 类。一个帖子可以有一张照片。但是,我想重新使用多态关系来添加辅助照片。

前:

期望:

但是,这失败了,因为它找不到类“SecondaryPhoto”。根据我从其他线程中可以看出的内容,我想做:

除了调用 Post#secondary_photo 只会返回通过 Photo 关联附加的同一张照片,例如 Post#photo === Post#secondary_photo。查看 SQL,它确实 WHERE type = "Photo" 而不是我想要的 "SecondaryPhoto" ......

想法?谢谢!

0 投票
2 回答
2433 浏览

ruby-on-rails - Rails AR validates_uniqueness_of 针对多态关系

是否可以根据多态关系验证子模型属性的唯一性?

例如,我有一个名为的模型field属于fieldable

我有几个其他模型(页面、项目),它们有很多字段。所以我想要的是针对父模型验证字段名称的唯一性,但问题是有时 Page 和 Item 共享相同的 ID 号,导致验证在不应该失败时失败。

我只是做错了还是有更好的方法来做到这一点?

0 投票
1 回答
533 浏览

doctrine - 教义中的多态关联?

Doctrine 中是否有类似 Rails 的多态关联?我正在尝试做类似的事情:http ://railscasts.com/episodes/154-polymorphic-association

0 投票
2 回答
2351 浏览

ruby-on-rails - 具有不同用户类型的 Ruby on rails

我正在尝试构建一个具有不同类型用户的应用程序,我正在使用 authlogic 进行用户身份验证。

所以我有一个用户模型,它具有 authlogic 所需的字段来发挥它的魔力。我现在想添加几个不同的模型来描述不同类型用户的额外字段。

假设用户注册,然后他将选择他的用户类型,当他完成注册后,他将能够添加特定于他的用户模型的信息。

最好的方法是什么?我目前正在研究多态模型,但我不确定这是最好的方法。任何帮助将不胜感激,谢谢。

0 投票
5 回答
1666 浏览

ruby-on-rails - STI 和多晶型物

我的代码有问题

在尝试获取一些新闻文章的评论时,我在日志中看到了类似

奇怪的是"commentable_type" = 'Post'。怎么了?

PS:Rails 2.3.5 && ruby​​ 1.8.7 (2010-01-10 patchlevel 249) [i686-darwin10]

0 投票
1 回答
163 浏览

ruby-on-rails - 手机账单建模:我应该使用单表继承还是多态关联?

在我的域中:

  • 用户有很多账单
  • Bills 有很多 BillItems(因此用户通过 Bills 有很多 BillItems)
  • 每个 BillItem 都是以下之一:
    • 称呼
    • 短信(短信)
    • 彩信(彩信)
    • 数据

以下是每个 BillItem 的属性(有些是常见的):

替代文字 http://dl.dropbox.com/u/2792776/screenshots/2010-04-13_2146-1.png

我的问题是我是否应该使用单表继承(即,一个带有“type”列的“bill_items”表)或多态性(每个 BillItem 类型的单独表)对这种安排进行建模,以及为什么。

0 投票
1 回答
2344 浏览

ruby-on-rails - 接受嵌套属性

我正在尝试使用附加到另一个模型的注释样式模型,但我不断收到错误消息:

带参数:

我在父模型中有这个

这在评论模型中

有任何想法吗?

我有一些与照片完全一样的东西......也是多态的,效果很好。我能看到的唯一区别是我已经嵌套了这个模型,所以表单看起来像这样:

我还注意到,在我的示例中,输出如下所示:

与没有的相比:

即一个有MODELNAME_attributes vs MODELNAME ...我不知道为什么?除了嵌套之外,形式似乎相同?

0 投票
1 回答
56 浏览

ruby-on-rails - 引用具有共同名称的相似关联模型

我有这些模型:

现在,在我的域中,通话和短信都是“同一种东西”——也就是说,它们都是“账单项目”。所以我想some_bill.bill_items回复与该账单相关的所有电话短信。最好的方法是什么?

0 投票
4 回答
932 浏览

ruby-on-rails - 如何在所有模型上添加 has_many 关联

现在我有一个初始化器可以做到这一点:

ActiveRecord::Base.send :has_many, :notes, :as => :notable ActiveRecord::Base.send :accepts_nested_attributes_for, :notes

它可以很好地建立关联,除非我加载使用它的视图时,第二次加载给了我: can't dup NilClass 来自:

有任何想法吗?我这样做是错误的吗?有趣的是,如果我将关联移动到我目前正在使用的模型上,我不会收到此错误。我想我一定是错误地建立了全球关联。