1

個人を説明するプロファイルを作成しています。この説明には、彼らが働いている業界に関する情報が含まれています(つまり、「コンピューターと IT」)。したがって、関係は次のように定義されます。

"A Profile has an Industry, but an Industry does not belong to a Profile."

このMongoidドキュメントを調べて、次のようにモデルをセットアップしました。

class Profile
  include Mongoid::Document

  has_one :industry
end

class Industry
  include Mongoid::Document

  field :name,      type: String, default: ''
end

belongs_to :profileこれで、通常はIndustryクラスにを追加することがわかりました。ただし、ドキュメントによると、外部キーは親 (プロファイル) ではなく子 (業界) に追加されます。

# The parent profile document.
{ "_id" : ObjectId("4d3ed089fb60ab534684b7e9") }

# The child industry document.
{
  "_id" : ObjectId("4d3ed089fb60ab534684b7f1"),
  "profile_id" : ObjectId("4d3ed089fb60ab534684b7e9")
}

業界をプロファイルにリンクさせたくないので、これは問題です。プロファイルを業界にリンクさせたいのです。どうすればこのように見えるようになりますか? :

# The parent profile document.
{ "_id" : ObjectId("4d3ed089fb60ab534684b7e9")
  "industry_id" : ObjectId("4d3ed089fb60ab534684b7f1")
}

# The child industry document.
{
  "_id" : ObjectId("4d3ed089fb60ab534684b7f1"),
}
4

1 に答える 1