問題タブ [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 に答える
1535 参照

ruby-on-rails - response_toにより、[:json、:html]:Arrayの未定義のメソッド`to_sym'が発生します

Ruby1.9.3p194のRails3.2.8では、gemに含まれるモジュールrespond_toのメソッドを呼び出すことによってクラス定義にオンデマンドで含まれるActiveSupport :: Concernに配列を渡すと、次のようになります。acts_as_...

そして次のリクエストで、私は次のようになります。

モジュールコードでは、次と同等のことを行っています。

フォーマットが他の場所で構成されているため、を指定するすべてのコントローラーに適用できますacts_as_...

クラス定義でこれを行うと、それが機能することを私は知っています:

では、フォーマットの配列である変数を使用してrespond_toを呼び出すにはどうすればよいですか?

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

ruby-on-rails-3 - Railsでrespond_toでカスタムフラッシュを設定する方法

このようrespond_toに設定できますflash[:notice]

flash[:success] を設定しようとして:success => "yay"いますが、うまくいきません。

私は何か間違ったことをしていますか?

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

ajax - Respond_to 多くの同じコントローラーからの AJAX 呼び出し

ページネーションしたいリストが2つ以上あるページがあります(たとえば、カミナリを使用)

@list_a@list_b

これらは私のpages#homeコントローラーで作成されています

remote: truejavascriptを介して新しい要素を追加するために、各リスト(を含む)へのリンクが必要です。

それは

home.js.erb 呼び出しを起動します。

しかし、home.js.erbでは、どのリンクがhome.js.erbを発火させたかを知る方法がわかりません。

2 つの ajax リンクを区別するにはどうすればよいですか? コントローラーからか js からか? そしてどうやって?

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

ruby-on-rails - Respond_to の Rails エラー

Railsを学習するための簡単なユーザー認証を作成しました:

ブロックを使用せずに新しいユーザーを作成した場合、respond_to と format.html はすべて正常に動作します (データベースには、作成されたユーザーがあり、ページがリダイレクトされます)。このコードでは、ユーザーが作成されますが、次のエラーが発生します(リダイレクトはありません):

PS: 私は format.json メソッドを追加したいので、respond_to と format が必要です

ありがとう

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

ruby-on-rails - レールでのjsonレンダリングをグローバルに防ぐ方法は?

ほとんどのアクションが json に応答する Rails アプリケーションがあります。

メソッド呼び出しにもかかわらず、すべてのコントローラーがjsonに応答しないようにするためにオフにできる「スイッチ」はありますかrespond_to、またはすべてのアクションで手動で無効にする必要があります(これは非常に奇妙に思えます)。

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

ruby-on-rails-3 - Respond_to format.csv からの rspec のファイルの内容をテストします

csvファイルをエクスポートするコントローラーに次のコードがあります

そして、私は私の仕様に次のものを持っています

response.bodyチェックすると、このテストでは空です。結果を確認できるように、このアクションがブラウザーでヒットされたときにダウンロードされる仕様で csv ファイルを取得するにはどうすればよいですか? 私はこれを理解しようとして少し壁にぶつかりました。

ご協力いただきありがとうございます。

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

ajax - jQuery Mobile は、UJS リモート リンクを使用してヘッダーを受け入れると、Rails Respond_to を中断します。

Rails 3 Web アプリを jQuery モバイルを使用するように変換していますが、「リモート」リンクに問題があります。

次のリンクがあります。

サーバー上では、次のように処理しています。

これは以前は素晴らしく機能していました。ただし、jQuery Mobile を追加したため、コントローラー コードは「json」ブランチではなく「html」ブランチを経由し、リダイレクトで応答します。

追加してみました

リンクに移動しますが、同じ効果が得られます。

jQuery Mobile の前は、UJS は次の Accept ヘッダーを使用してリクエストを送信していました。

jQuery Mobile では、次のヘッダーが表示されます。

このヘッダーの変更が、サーバー側の動作の変更の原因だと思います。クライアント側でデバッグして、誰が何をしているのかを正確に把握できませんでした。ある種の「PUTリクエスト」を受け取ったり、物事が適切にルーティングされたりしているため、UJSは明らかにまだ何かを行っていますが、何がヘッダーを変更しているのかわかりません。

ありがとうございました!
ダニエル

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

ruby-on-rails - Railsでrespond_toコードをDRYする

いくつかのアクションがあります (action_a、action_b などと呼びましょう)。

各アクションで、ユーザーがログインしているかどうかを確認し、respond_to次のようにブロックしない場合は確認したい

1 つのアクションについてはこれで問題ありませんが、多くのアクションについてはそうではありません。まったく同じことを行うこのコードの重複が多数あるため、あまりきれいでも維持しやすいものでもありません。

このコードを再利用し、必要なすべてのアクションで書き直さないように、これをどこかに置く方法はありますか?