質問

のは、私はプロジェクトと呼ばれるモデルクラスを持っていますが、これに代えて言ってみましょう。

class Project < ActiveRecord::Base

私はこれを書きたかっます:

class Project < ORM

特定のORMの実装は私のモデルクラスに存在しないようにします。

どのように私は上記のプロジェクトのクラスはActiveRecord::Baseのサブクラスとしてではなく、具体的にそれをサブクラス化せずに行動することができるように私のORMクラスを記述する必要があるでしょうか?

私は単純に言うます:

class ORM < ActiveRecord::Base

[プロジェクトは、私が書いたかのようにちょうど同じActiveRecord::Baseのサブクラスになります:

class Project < ActiveRecord::Base
役に立ちましたか?

解決

おそらくこれを行うための簡単な方法は、単にActiveRecord::Baseを割り当てることであろう

ORM = ActiveRecord::Base

class Project < ORM
end
後で別の実装にスワップしたい場合は、

次に、あなただけのORMへの割り当てを変更することができます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top