1. ホーム
  2. ruby-on-rails

[解決済み] railsで':remote => true'はどのように動作するのでしょうか?

2022-02-10 08:32:18

質問

以下の方法がわかりません。 :remote => true はrailsで動作します。私がそれを書いたとき、ajaxリクエストが送信されることを知っています。 .js の応答がなされます。しかし、これはどのように動作するのでしょうか?つまり、アクションはどこに行くのでしょうか、など。

どのように解決するの?

AJAX-Railsの全体の流れを説明します。 remote=> true .

まず remote => true は、フォームに定義されたアクションを送信または呼び出します。

以下はその例です。

<%= form_tag({:controller => 'my', :action => 'my_data'},:id => 'filter_form', :remote => true) do %>
 #code here
<%= submit_tag 'save', :name => 'commit'%>
<%end%>

さて、上記のコードは my_data アクションイン my のコントローラーを使用しています。

ここでは、レスポンスタイプを with で定義することができます。

def my_data
  #actions on data here
  respond_to do |format|
    format.js
  end
end

あとは、"を作ることです。 .js アクションと同じ名前の "" ファイルを作成します。

my_data.js.erb

この" .js ファイルは、フォームを処理します。jQueryやJavaScriptでdocument要素の記述や更新が可能でした。