1

アプリの一部をGemに抽出しています。これには、いくつかの新しいActiveRecordモデルの作成が含まれます。現時点では、これらのモデルは次のようになっています。

Class Wordcount < ActiveRecord::Base
  belongs_to :keyword
  belongs_to :article
end

Class Keyword < ActiveRecord::Base
  has_many :wordcounts
  has_many :articles, :through => :wordcounts
end

Articlegemは、このコードが由来する既存のRailsアプリで 定義されたモデルだけでなく、文字列またはテキストフィールドを持つActiveRecordモデルにフックします。

宝石の機能が適用されているモデルに基づいて、関連するARアソシエーションを生成するには、何をする必要がありますか?私は最終的に次のようになることを望んでいます:

has_my_gem_functionality :on => [:field1, :field2, ...]

そして残りは宝石の中に安全にカプセル化されます。

移行もメタプログラミングする必要があると思います。私がやろうとしていることは比較的単純だと思います。それは私の快適ゾーンから少し離れすぎています。

4

1 に答える 1

1

ソースを使用してください、ルーク!:)

同様のことを行う他のいくつかの宝石のソースを見てください。例えば:

于 2012-07-30T19:20:34.320 に答える