問題タブ [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 投票する
1 に答える
659 参照

web-services - Railsアプリケーションを介してRailsWebサービスを利用する

RailsWebサービスにはいくつかの選択肢があるようです。つまり、 ActiveResourceHTTPartyNokogiri

仕事を成し遂げるためにこれらの3つ(または他のもの)の間に明確な勝者はいますか?要件は基本的です。つまり、認証を必要とせずにPOSTを実行します。

コンシューマー側とサーバー側の両方で、Rails3アプリケーションについて言及していることに言及する必要があります。それはかなり一般的な質問であり、そこにはたくさんの投稿があることを私は知っていますが、どれが単純なニーズに最も適しているかについての明確な傾向はないようです(それはフレームワークの一部であるため、ActiveResourceに行くと直感的に言います) 。

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

ruby-on-rails - ActiveResource で url_for を使用する良い方法はありますか?

Rails アプリで ActiveResource を使用して別の Rails アプリと通信しています (どちらもバージョン 2.3.5 です)。特定のリソース オブジェクトのページにリンクしたいのですが、それを行う良い方法がないようです。私が見つけた醜い方法は、次のように、リソースを模倣する行を routes.rb ファイルに追加することです。

しかし、これはかなり醜いです。現在、実際には存在しない余分なルートがアプリ内に浮かんでいます。もっと良い方法があるはずです。モデル自体に、それ自体の URL を取得する手がかりはありますか? 誰にもヒントはありますか?ありがとう。

0 投票する
2 に答える
939 参照

ruby-on-rails - Ruby on Rails で ActiveResource を使用した条件付き 'attr_accessible'

RoR3 アプリケーションが 2 つあります。

  • http://users.domain.local
  • http://profiles.domain.local

「users/models/profile.rb」を作成しました:

「profiles/models/profile.rb」には次のものがあります。

私のプロファイルの SQL テーブルには、次の列が含まれています。

  • ID
  • 名前
  • ユーザーID

したがってProfile.create(:name => "test_name")、新しいプロファイルを実行するhttp://profiles.domain.localと、「test_name」という名前で作成されます。

明らかなセキュリティ上の理由から、「user_id」属性にアクセスできるようにしたくありませんが、「users」アプリケーションからプロファイルを作成するときにそれを設定する必要があります。

私はそれを作るために多くの方法を試しましたが、簡単な解決策を見つけることができません. おそらく、if「ユーザー」アプリケーションからの要求を満たす「プロファイル」アプリケーションの「attr_accessible」の近くのステートメントで可能です。

誰か助けてくれませんか?

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

ruby-on-rails - ActiveResource XML 解析の一貫性を高めるにはどうすればよいですか?

ActiveResource を使用して、Redmine (バグ追跡ツール) が提供する REST Web サービスを使用しています。その Web サービスは、次のような XML を生成します。

ただし、ActiveResource がそれを解析し、結果を繰り返し処理して出力すると、次のようになります。

そうです、値を持つものからすべての属性情報を破棄しますが、空の要素からの属性情報は保持します。

言うまでもなく、id 15 (または何でも) の値を見つけようとしている場合、これは物事をかなり難しくします。位置によって物事を参照できるようになりましたが、これらの要素は将来変更される可能性が高いため、これは非常に脆弱です。ActiveResource に属性情報を保持させる方法が必要だと思いますが、特別なことは何もしていません。

(私の ActiveResource 拡張機能はわずか 5 行です。ActiveResource を拡張し、サービスの URL、ユーザー名、およびパスワードを定義するだけです)。

それで、ActiveResourceがこのXMLを奇妙に解析しないようにする方法を知っている人はいますか?

0 投票する
2 に答える
1511 参照

ruby-on-rails - Rails 3: ActiveResource カスタム メソッド呼び出し - ClientError 414 - 回避策?

現在、Web サービス用に ActiveResource を使用してクライアント アプリとサーバー アプリの両方を作成しています。クライアントには、サーバーによる変換プロセスが必要な長い文字列 (:history) があります。

ここで、クライアントは ActiveResource::Base を拡張するオブジェクトの post メソッドを呼び出します

この行は、URI が長すぎるというエラーを出しています。

ActiveResource::ClientError に失敗しました。応答コード = 414。応答メッセージ = Request-URI Too Large.

「大きな」データを送信するために他にどのようなオプションがありますか? おそらく、上記の hh 文字列の 2000 文字付近のデータを探しています。

ありがとう!

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

ruby-on-rails - Rails - オブジェクトの代わりにハッシュを返す ActiveResource

私は次のコードを持っています

有効なユーザーが返されると、メソッドを呼び出すことができるオブジェクトではなく、ハッシュとして返されるようです

たとえば、次のような値にアクセスする必要があります

それ以外の

オブジェクトとして返すにはどうすればよいですか?

ありがとう

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

ruby-on-rails-3 - Rails 3.0 のアクティブ リソース、非標準 ID のネストされたリソース

モデルの一部を設定するために別の Rails アプリケーションを参照する必要がある Rails アプリケーションがあり、それを行うために Active Resource を使用しています。

次のようなルートにヒットする必要がある場合:

まったく問題ありません。自動マッピングは問題なく使用できます...

ただし、次のようなルートを処理できる必要もあります。

そして、これは私が立ち往生しているところです。

ドキュメントを見るだけで、これはカスタムの安らかなルートとしてカウントされる可能性があるように見えます。

これは見た目が悪いだけでなく、機能しません (実際にデータを持っている Rails アプリが認識します)。

そこにはIDがありません。物事はさらに複雑になり、他のレールオブジェクトの「チャネル」モデルは、レールを考慮していない(したがって「id」列がない)レガシーデータベースから構築されているため、これはクールです。代わりに、「station_id」を使用します。

では、その乱雑な Channel.get メソッドを使用する必要がある場合、ID が正しく設定されていることを確認するにはどうすればよいでしょうか? ActiveResource アプリからこれを行うことはできますか、それともソース Rails アプリで何か変更する必要がありますか?

編集:誰かがそれを提案した場合に備えて、Channel.first.get(:programs, :id => 1) を試しましたが、次のようなルートが得られます:

/channels//programs.xml?id=1.

多分私は安らかなルートを放棄し、そこからIDを取得する必要があります....しかし、私は本当にしたくありません...

0 投票する
2 に答える
263 参照

ruby-on-rails - どのような場合に ActiveResource を使用することをお勧めしますか? そして、そうでないのはどの場合ですか?

Ruby on Rails 3 を使用しており、RoR サービス アプリケーションから RoR クライアント アプリケーションに情報を送信するためにActiveResourceを使用することを検討しています。

一般的に、どのような場合に ActiveResource を使用することをお勧めしますか? そして、そうでないのはどの場合ですか?


ActiveResources の使用については、多くの疑問があります。以下はほんの一例です。

  • 私は、個人情報と公開情報からなるリソースを持っています。HTTPのプライベート情報を送信するべきではないため、RoR の動作をハックしない限り、公開情報を含むも​​のを送信できませんでした。RoR の動作をハックする必要がないようにHTTPSを使用すると、サーバーの作業が重くなりすぎませんか?
0 投票する
1 に答える
2434 参照

activeresource - ActiveResourceを使用したCarrierWave

誰かがActiveResourceモデル(Rails 3)でCarrierWaveを使用することについて何か洞察を持っていますか?ファイル名のフィールドを持つActiveResourceモデルがあり、ファイルをリモートファイルシステムに保存したいと思います。

私はあまり成功しなかった(またはリモートで正しく何かをしていると確信して)いくつかのことを試したので、すでにgemに含まれているORMモジュールを使用せずにCarrierWaveを正常に実装した人からの提案をいただければ幸いです。

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

ruby-on-rails - 2 つの異なる ActiveResource モデルで 2 つの異なる接続オブジェクトを使用するにはどうすればよいですか?

ActiveResource モデル間の接続が共有されていることがわかります。したがって、あるモデルでフォーマットを設定すると、他のモデルのフォーマットと異なるままになります。ただし、2 つの別々のモデルでメソッドを呼び出すと.connection.format、新しい形式を設定するたびにその形式が変更されます。したがってProfile、フォーマットで2番目にロードされた:json場合.connection.format、両方のモデルが次のようになりますActiveResource::Formats::JsonFormat

私の元の質問は完全に異なっていました (何が起こっているのか完全には理解していませんでした) - 編集履歴を見て元のバージョンを確認できます。もっと反応が返ってくるといいのですが…

証拠:

その後、rails console...

これまでのところ、Locationモデルとその接続は正しい形式になっています。

普通に見える、それProfileが私が望むフォーマットです。

わかりました... Profile モデルをロードした後も Location.format は同じままです : これらのモデルは遅延ロードされるため、クラス名を呼び出そうとするまでファイルとコードは含まれません。

そして、ここから問題が始まります。Profile モデルを呼び出した後、Location.connection.format

フォーマットは同じである必要はありませんxmlこれにより、 Location.find(:all, :from => "/something.xml") のようなものを呼び出すと、解析が完全に壊れます- asを解析しようとしますjson

私の質問は今だと思います-2つの接続をどのように分離しますか? (または、この問題を解決する)

編集してコンソールにこのテストを追加します。