databasedotcom
アプリでgemを使用しRuby on rails
て Salesforce インスタンスにアクセスしていますがsObject
、正しい名前空間で を作成するのに問題があります。データベースで呼び出されたモデルが既にあるため、最初に Salesforce からオブジェクトUser
のリストを取得しようとしたとき、ローカルで定義されたモデルを取得していました。User
いろいろ読んだ後、 を使用して Salesforce インスタンスへの接続に使用するクライアントの名前空間を指定できることがわかりましたsobject_module
。私はそれを行い、Salesforce モデルのプロジェクトでモジュールも定義しました。User
ただし、Salesforce で定義されたモデルではなく、ローカルで定義されたモデルが返されUser
ます。Salesforce には存在するがローカルには存在しないモデルにアクセスしようとすると、オブジェクトは正しい名前空間で返されます。
なぜこれが起こるのですか?sobject_module
クライアントにを設定すると、正しい名前空間でモデルが返されるはずだと思いました。ここに私のクライアント接続があります:
client = Databasedotcom::Client.new(
client_id: "my_client_id",
client_secret: "my_client_secret",
sobject_module: "Sale"
)
client.oauth_token = client.authenticate( username: "my_username", password: "my_password")
Salesforce オブジェクト用に定義したモジュールは次のとおりです。
module Sale
end
これは機能し、戻ります<Sale::Organization:0x007f90ef8ad590>
client.materialize("Organization")
ただし、これはそうではありません。<User:0x007f8f7e5a06d0>
client.materialize("User")
前もって感謝します
アップデート
これを機能させることはできませんでしたが、別の宝石を見つけて、それで完全に機能しました. restforce
宝石を使った