問題タブ [activeresource]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
6 に答える
47998 参照

ruby-on-rails - Rails 3.1 を複数のデータベースに接続する

ShowNearby では、PHP から RoR 3.1 への大規模な移行を行っており、以前に解決したことがあるかもしれないいくつかの問題に直面しています。

大量のデータがあるため、DB を個別に処理できるいくつかの DB に分離することにしました。たとえば、アカウント、場所、ログなどはいくつかのデータベースに分割されています

うまくプレイするには、移行、フィクスチャ、モデルを取得する必要がありますが、これまでのところ、かなり面倒です。ソリューションが受け入れられるための要件の一部:

  • 1 つのモデルは、いずれかのデータベースの 1 つのテーブルに関連付ける必要があります。
  • rake db:drop - database.yml で指定したすべてのデータベース環境を削除する必要があります
  • rake db:create - database.yml で指定したすべてのデータベース環境を作成する必要があります
  • rake db:migrate - さまざまなデータベースへの移行を実行する必要があります
  • rake db:test - フィクスチャを取得してさまざまなデータベースにドロップし、ユニット/関数/などをテストする必要があります

データベースごとに別々の Rails プロジェクトを設定し、ActiveResource で接続することも検討していますが、あまり効率的ではないと感じています。以前に同様の問題に対処した人はいますか?

0 投票する
1 に答える
1155 参照

ruby-on-rails - Railsでの一括API呼び出し

API呼び出しを介して互いに話し合う2つの異なるRailsアプリケーションがあります。通話が少なかった時代は終わりました。つまり、データ転送がはるかに少なくなりました。HTTP要求/応答タイムアウトの問題については気にしませんでした。ただし、データが大きくなるとタイムアウトが発生し、直接API呼び出しではなく、データを分割してバッチで送信する必要がありました。

現在、私たちはスレッディングとバックグラウンドジョブを使用して必要なことを行っていますが、その下ではクリーンな方法ではないと感じており、パフォーマンスが大きな打撃を受けていると言わざるを得ません。選択肢が少ない気がします。助言がありますか?

0 投票する
1 に答える
741 参照

ruby-on-rails - ActiveResourceサフィックス

ActiveResourceを使用すると、MyObject.find(id)を呼び出すと、「[self.site] / [self.prefix] /:id。[self.format]」が取得されます。ただし、アクセスしているAPIの構成は少し異なります。id.file_typeの代わりに、「[self.site] /:id/[self.suffix]。[self.format]」にアクセスする必要があります。

すなわち:http:// api_path /:id/tool.jsonを取得します

このシナリオでactiveresourceを構成する方法はありますか?私はドキュメントで多くを見つけていません。

0 投票する
1 に答える
824 参照

ruby-on-rails-3 - RailsActiveResourceを使用して既存のJavaRESTAPIを使用するときにURLが間違っている

私はRubyonRailsを初めて使用します。Rails、ActiveResourceクラスを使用して既存のJava REST APIを使用しようとしていますが、リソースURLがヒットするたびに間違った(https://myapp/resource/**apis**/responce.json)、正しいURLは(https://myapp/resource/**api**/responce.json)です。

問題は、api/ではなくアクティブなリソースマッピングapis/です。

以下はmodel=>app / model/api.rbの私のコードです

app / controllers/api_controller.rbのコード

上記のコードは常に404エラーを出します。ログを確認すると、リソースがヒットしています。https://myapp/resource/**apis**/responce.json?key=key&userId=1 リソースのURLをヒットする必要があります。https://myapp/resource/**api**/responce.json

0 投票する
1 に答える
646 参照

ruby-on-rails - ActiveResourceで現在のBasecampAPIを使用するにはどうすればよいですか?

Basecamp Classic API( http://developer.37signals.com/basecamp/comments.shtml )を使用しようとしています。現在のbasecamp-wrapperバージョンは私にフィット感を与えていました。1つは、jsonの応答にページネーションの出力が含まれているのに対し、xmlの応答には含まれていないためです。これは簡単な修正でしたが、問題はURL構造が標準化されていないことです。

APIはそのようないくつかのことを指定しているので、要素パスとコレクションパスを単純に分離していると私は信じています。

私はこれを何度か試みましたが、実際には成功していません。このようなコメントを処理しようとすると、せいぜいハッキーであり、element_pathがcollection_pathとは異なるため、実際には機能しません。

これは、実際にネストされていない適切なURLを取得し、失敗するPUT要求を行うupdate_attributeまで機能​​します。

なぜこれがアップデートで機能しないのですか?さまざまな親リソースをより適切に処理するにはどうすればよいですか?

どんなヒントも素晴らしいでしょう。:)

0 投票する
1 に答える
903 参照

ruby-on-rails-3 - ActiveResource を使用して URL を変更する

外部サービスへのアクセスを管理するために ActiveResource を使用しています。

外部サービスには次のような URL があります。

ここに私の車のクラスがあります:

Rails コンソールで特定の車を取得するようにオブジェクトを設定すると、次のようになります。

次のような URL を取得します。

URL に range 要素と range_num 要素を含めるにはどうすればよいですか?

また、URL の末尾に .json 拡張子を付けたくありません。ここで説明されているように、 element_name および collection_name メソッドをオーバーライドしようとしました: How to remove .xml and .json from url when using active resource but it doesn't like to work for me...

アイデアをお寄せいただきありがとうございます。

0 投票する
1 に答える
698 参照

ruby - activerecordのアクセサメソッドをactiveresourceの属性にマップしますか?

ActiveModel で指定された属性の一部は、getter setter として定義されている非 db 属性です。問題は、これらの属性値がクライアント側のアクティブなリソース レコードに反映されないことです。

クライアントの SepcialItem レコードの属性名に nil 値を取得しています。基本的に、アクセサメソッド名をクライアント側の名前属性にマップしようとしています。

可能な解決策は何ですか?

0 投票する
1 に答える
558 参照

ruby-on-rails-3 - Rails3 ActiveResource Post Call が空のパラメータ ハッシュを配信する

ActiveResource と Json を使用して Rails3 アプリから Sinatra API アプリで新しい「人」を作成しようとしています。Rails3 で「Person」モデルを作成し、ActiveResource を使用して API を正しく呼び出し、URL を正しく読み取りますが、オブジェクトと共にパラメーターが渡されないようです。

Rails3 Person モデルから:

Rails3 コンソールから:

シナトラ アプリから:

IRB コンソールを使用すると、次のように動作します。

誰かが私が見逃したもの、または間違っていることについて何らかの方向性を教えてください。ありがとうございます。

0 投票する
1 に答える
1540 参照

ruby-on-rails - :has_many, :through と ActiveResource モデル

UserService バックエンド Rails アプリの 3 つのモデル:

別の Rails フロントエンドにある 3 つの ActiveResource モデル

フロントエンドから、それは行うために動作します

Service.user_id は belongs_to であるため、単一のプロパティです。

しかし、私はどちらもできません

また

ActiveResource は GET リクエストを生成しているだけなので、何も起こりません。

完全を期すために、(フロントエンドで) 次のようなことを行うことも失敗します。

等々。users_controller::update メソッドを使用するとうまくいくと思っていましたが、これが可能かどうか疑問に思っています。

2 つの ActiveResource モデルで :has_many, :through を実行した人はいますか? AR モデルのコレクションに影響を与える方法はありますか? 結合テーブルを手動で操作する必要がありますか? (それによって members_controller を作成しますか?)

0 投票する
1 に答える
1765 参照

ruby-on-rails - ActiveResource Post がパラメーターを送信しないのはなぜですか?

ActiveResource と Json を使用して Rails3 クライアントから MongoDB/Sinatra サーバーに新しい「ユーザー」を作成しようとしていますが、送信されたオブジェクト本体またはハッシュが空です。Rails3 で「ユーザー」モデルを作成し、Rails コンソールを使用して Sinatra サーバーへの ActiveResource 呼び出しを行いました。サーバーは URL を正しく読み取りますが、オブジェクトと共にパラメーターが渡されないようです。私が見逃したもの、または正しい出力が得られない理由について、誰かが私に考えを教えてもらえますか?

Sinatra Server は Ruby 1.8.7 を使用します。
Rails3 クライアントは Ruby 1.9.2 を使用します。

Rails3 クライアント ユーザー モデルから:

Rails3 コンソールから:

Sinatra アプリ サーバーは次のオブジェクトを受け取ります ("puts @app.inspect" を使用して Sinatra サーバーから取得します)。

ご覧のとおり、 @params={} は空です。

HTTP リクエストの使用は次のように機能します。

そしてこれを生成します:

@params={"last_name"=>"Bill", "first_name"=>"Smith"} は空ではなくなりました。

active_resource/connection.rb ファイルの 94 行目

私は何かが欠けていると確信していますが、これは空の体を作成するようです.

アドバイスありがとうございます。