問題タブ [respond-to]

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 に答える
272 参照

ruby-on-rails - Railsで同じrespond_to形式に異なるロジックを使用する

私の Rails アプリケーションは現在respond_to、サイトの AJAX フォームの形式として JSON を使用しています。アプリケーション用のパブリック API を作成する予定であり、JSON も使用したいと考えています。要求された形式が両方とも JSON である場合、コントローラーで AJAX フォームと API 呼び出しを区別するにはどうすればよいですか?

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

ruby-on-rails - csvの非リソースのRailsルート

「リビジョン」というメソッドがあり、同じロジックを使用して csv に出力できるようにしたいと考えています。FasterCSV gem を使用したいと思います。必要なのは、html と csv の両方の出力のルートを取得するためにルートに追加するものです。URLを次のようにしたいと思います:

考え?

どうもありがとう!

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

ruby-on-rails - Rails ActionController の Respond_with の操作とテスト

この質問の冗長性について事前にお詫び申し上げます。辛抱していただければ、実際には非常に単純であることがわかると思います...私のRailsドメインの知識が限られているため、説明するのが難しいだけです。

8 月 6 日付の ActionController コミットでこのコメントが与えられた場合:

使用する非常に基本的なコントローラーを変更しましたrespond_withparamsRailsの自動生成されたテストが更新および作成メソッドに空を渡そうとすると、2つの仕様が失敗することを除いて、すべてが正常に機能しているようです。この動作は単純な if save/else で修正できますが、この「新しい」機能を理解しようとしています。デフォルトの仕様は時代遅れの方法で書かれている可能性があると思います。

コミットコメントから: " Since the request is a POST, respond_with will check wether @people resource have errors or not. If it has errors, it will render the error object with unprocessable entity status (422)."

したがって、POST の下の最後のテスト/仕様 (以下) までスクロールすると、「処理不能なエンティティ ステータス (422)」をテストして合格し、すべてが桃色になるように書き直すことができますか?

私のコントローラー:

仕様のテスト:

これは clowns_controller_spec.rb の一部です:

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

ruby-on-rails - プロトタイプを使用して、完全な「js.rjs」コードの処理を回避する「redirect_to」は可能ですか?

*user_controller.rb* ファイルには、次のコードがあります。

update.js.rjsファイルには、このコードがあります

これは、変数 (@yo == true) を渡す Java 応答をリダイレクトするためのハックです。ただし、 update.js.rjsでコードを処理することを避けて、中かっこで「redirect_to」のようなことを行う方がよいと思います。

しかし、それを行う方法やそれが可能かどうかはわかりません。誰でもこの問題について私にアドバイスできますか?

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

ruby-on-rails-3 - Rails3とRespond_withの問題

2つのユーザーインターフェイスを持つアプリケーションがあります。

1つ目は通常のユーザー向けで、2つ目はiPhoneユーザー向けです。

コントローラ内でコードをリファクタリングして、respond_toの代わりにrespond_with宣言を使用するまで、すべてが正常に機能していました。

アプリケーションはまだhtmlインターフェイス(:format =>:html)で動作していますが、iphoneインターフェイス(:format =>:iphone)では動作していません。

iPhoneで、次のアクション(:index、:new、:edit、:show)を実行すると、機能します。

しかし、(:create、:update、:destroy)を実行すると、テンプレートが見つからないというエラーが表示されます(たとえば、create.iphone.haml)。

私のコントローラーには

そして、例えば、編集と更新のアクション

実際、:iphone形式は:htmlのように処理され、ドキュメントに指定されているto_formatメソッドを呼び出さないようにしたいと思います。

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

ruby-on-rails-3 - to_xmlをオーバーライドして、返されるフィールドを制限します

ruby1.9.2とrails3を使用して、レコードがjsonまたはxmlとしてアクセスされたときに返されるフィールドを制限したいと思います(2つの形式のみが許可されています)。

この非常に便利な投稿でresponse_withを紹介しました。オンラインのどこかで、一部のフィールドを包括的に許可/拒否するための良い方法は、クラスのas_jsonまたはto_xmlをオーバーライドし、フィールドを制限するために:onlyまたは:exceptを設定することです。

例:

これはまさに私が探しているものであり、jsonで機能しますが、xml "index"(GET /widgets.xml)の場合、空のウィジェット配列で応答します。to_xmlオーバーライドを削除すると、期待どおりの結果が得られます。何か間違ったことをしているのですか、および/またはWidgets.to_xmlオーバーライドがArray.to_xmlの結果に影響するのはなぜですか?

私はこれを使用して回避することができます

しかし、それが非常に乾燥した方法だとは思わないでください。

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

ruby-on-rails-3 - Railsのrespond_toブロック内でレイアウトfalseを渡すにはどうすればよいですか?

私はこれを機能させる方法を理解しようとしています。ここに私のコードがありますが、現在は機能していません:

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

javascript - format.htmlが存在する場合、response_toはformat.jsで機能しません

を使用する場合respond_to、AJAX呼び出しは、HTML応答が存在しない場合にのみjavascript応答を呼び出します。

その場で編集アクションを送信するための次のJavaScriptがあります。

次に、次のSurveyコントローラーメソッドがあります。

format.html行を削除すると、正常にformat.js応答します。しかし、そこに残しておくと、そのjavascriptビットformat.htmlを介して送信するとページ全体がレンダリングされます。editable

このアプリではRails3.0.3を実行しています。

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

ruby-on-rails - パブリッシュ時にコントローラーが変数の形式を変更する

私はRORの初心者ですが、すぐに慣れます。私はこの問題に数時間取り組んできましたが、バグのようです。意味がありません。

次の移行を行うデータベースがあります。

今回の移行により、データベースに作成されるものも整数、文字列などであることを確認しました。

スキャフォールドを介して生成した後、コントローラーに触れていません。つまり、ショー、インデックスなどを備えた標準コントローラーです。

今。Webフォーム、Railsコンソール、またはデータベースに直接データを入力すると(URLの場合はwww.domain.com、アドセンスの場合は500など)、データベースに問題なく作成されます。

ただし、ウェブサイトに公開されると、変数は完全に狂ってしまいます。Adsense (整数) は日付に変わり、url (文字列) は float に変わります。これは、いくつかの変数でのみ発生します。

500 を入力すると、Rails はそれを date => クラッシュおよび「引数が範囲外」として出力しようとするため、これにより「引数が範囲外」の問題も発生します。

では、これを修正/トラブルシューティングするにはどうすればよいですか? なぜフォーマットが変わるのですか?コントローラーのrespond_toが原因でしょうか?

乾杯、

クリストファー

コントローラ:

意見:

出力:

この出力では、次の入力を使用しました。

たとえば、url が空白のままになっている (そして 0.0 出力が作成されている) ことに注意してください。Empire タイプは空白のままにして、0 の出力を作成しました。

さらに明確にするために、データベース内のデータは私の入力とまったく同じです。間違っているのは出力だけです。

編集モードに戻ると。「Adsense」と「Affiliator」の出力 (デフォルト値) は2000-01-01 00:00:24 UTCを示しています。

0 投票する
4 に答える
743 参照

ruby - Ruby 1.9.2 Object.respond_to? :hello && Object.hello でエラーが発生するのはなぜですか?

今日、コードをステップ実行しているときに、予期しないことに気付きました。この文:

もし Object.respond_to? :こんにちは && Object.hello #stuff

未定義のメソッド エラーを返します。しかし、なぜ?明らかに、hello は Object の有効なメソッドではありませんが、短絡評価を考えると、Object.respond_to のたびに Object.hello を無視するべきではありませんか? :こんにちは偽ですか?

UserSession クラスが永続化を定義する必要がある理由を正確に理解しようとして、Authlogic で遊んでいるときにこれに気付きました。Rails 3で。

ありがとう