サードパーティの API からオブジェクトを取得し、それらを type のサブクラスであるオブジェクトに構築するクラス API がありますAPIObject。 APIObjectサブクラスは、プル元の API のオブジェクト名と一致します。
User < APIObject
Account < APIObject
標準の Rails アクセサーを使用してオブジェクトをプルできる APIObject のクラス メソッドを定義したいと思います。
user = User.find id
この呼び出しを次のような API 呼び出しに変換するメソッドが必要です。
API::User::findById id
APIObject サブクラス ( User)の名前にアクセスし、self.class.nameそれを使用して定数 ( API::User) を呼び出したいのですが、うまくいかないことがわかってAPI::self.class.nameいます。サブクラスごとにこのメソッドを何度も書き直すことができましたが、それを行わなくても可能であるように思われます。提案?