1

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宝石を使った

4

1 に答える 1

0

すでにこの結論に達していると思いますが、Heroku は databasedotcom gem のメンテナンスを終了しました。

于 2014-08-26T13:29:39.913 に答える