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 を取得したいのですが、nil が返されます。
sub = Subscription.find(1)
sub.backend_user
サブスクリプションテーブルでこれを取得しました:
t.integer "subscribable_id"
t.string "subscribable_type"
サブスクリプションのバックエンド ユーザー オブジェクトを取得するにはどうすればよいですか?