私は、多くの異なるソースからフィードを取得し、それらのストリームを共通のモデル (この場合は特性) に保存するサイトで作業しています。FeedEntry クラス内のコードの例は次のとおりです。
feed = Feedzirra::Feed.fetch_and_parse(feed_url)
add_entries(feed.entries)
...
def self.add_entries(entries)
entries.each do |entry|
# Should know how to parse itself into a trait
@trait = parse(entry)
if @trait.save
...
end
end
確かに私は Java のバックグラウンドを持っており、Java では継承階層を設定し、FeedEntry の各サブクラスで parse メソッドを拡張して、各 FeedEntry がそれ自体を解析する方法を認識できるようにします。だから私の質問:
1)これはレールで実行可能な計画ですか?
2)もしそうなら、FeedEntry がどのサブクラスであるかを示す基本的に「タイプ」である列を含めるだけでしょうか?
3)そうでない場合、これを行うための最も乾燥した方法に関する提案はありますか?
ありがとう!