0

私はまったく新しい開発者なので、これはばかげた質問かもしれません。

地理データの統計を保存する webapp をセットアップしようとしています。

  • 基本的な統計情報 (中央値、分散、平均など) のフィールドを持つStatというモデルがあります。
  • 各地理単位CityZipSub-Zip のモデルをセットアップしました

私が知りたいのは、Stat モデルを Cities、Zip、および Sub-Zip に関連付けることです。つまり、すべての統計モデルは都市、郵便番号、またはサブ郵便番号のいずれかに属しますが、地理的単位 (都市、郵便番号、サブ郵便番号) は複数の統計情報を持つことができます。

これを行うには、関連付けと移行をどのようにセットアップすればよいですか? 私はRailsのガイドを見てきましたが、オブジェクトが異なるモデルに属することができる関係をカバーしていないようです(ただし、そのうちの1つだけです)。または、モデルを別の方法で設定する必要がありますか?

4

2 に答える 2

1

あなたが言った:

すべての統計モデルは都市、郵便番号、またはサブ郵便番号のいずれかに属しますが、地理的単位 (都市、郵便番号、サブ郵便番号) は複数の統計情報を持つことができます。

だから私はあなたがPolymorphic Associationsを設定したいと思う:

ポリモーフィック アソシエーションを使用すると、モデルは 1 つのアソシエーションで複数の他のモデルに属することができます。

したがって、あなたの関連付けは次のようになります。

class Stat
  belongs_to :statsable, polymorphic: true
end

class City
  has_many :stats, as: :statsable
end

class Zip
  has_many :stats, as: :statsable
end

class Subzip
  has_many :stats, as: :statsable
end
于 2012-12-05T06:11:14.507 に答える
0

これは、Rails 関連付けを使用して実行できます。次のリンクでは、これについて詳しく説明しています。

http://guides.rubyonrails.org/association_basics.html

于 2012-12-05T05:53:47.707 に答える