获得多态关联的两面

时间:2013-09-12 07:09:21

标签: ruby-on-rails-3

我正在构建一个Rails 3.2应用程序。在这个应用程序中,我已经建立了一个多态关联 订阅模型和backend_user模型。

在BackendUser模型中,我得到了这个:

has_one :subscription, as: :subscribable

在订阅模型中,我得到了这个:

belongs_to :backend_user, polymorphic: true

如果我想检索backend_user的订阅,我会这样做并且工作正常:

user = BackendUser.find(1)
user.subscription

我还想做的是转动表格。我想获得订阅的backend_user 像这样,但我没有回来。

sub = Subscription.find(1)
sub.backend_user

我在订阅表中得到了这个:

t.integer  "subscribable_id"
t.string   "subscribable_type"

如何获取订阅的后端用户对象?

1 个答案:

答案 0 :(得分:1)

你需要:

sub = Subscription.find(1)
sub.subscribable

这将为您提供后端用户对象。