11

申し訳ありませんが、Rails 初心者の質問があります。Rails アプリケーションで、ビューからコントローラーで定義されたメソッドを呼び出すにはどうすればよいですか? たとえば、株式情報を取得するカスタム メソッドを作成したとします。私の見解では、クリックするとカスタムメソッドが呼び出され、株式の結果が入力される通常の HTML ボタンが必要です。

それはどのように行われますか?私は周りを見回しましたが、これを行う簡単な方法を見つけることができませんでした。しかし、私はここで何かが欠けていると確信しています。

4

2 に答える 2

21

編集:私は質問が何であったかではなかったそのタイトルで質問を取りました。あなたの質問のタイトルへの答えは一番下にあります

必要なのは、個別のコントローラーアクションであるajaxリクエストです。あなたは必要になるでしょう:

  1. ボタンがクリックされたときにルートを要求し、そのDOMオブジェクトにデータを入力するjavascript

  2. ajaxリクエストが要求していたものを返すアクション

これを行うには多くの方法がありますが、「howto rails ajax」を検索すると、途中で役立つ膨大な数のチュートリアルが見つかります。私が好きな方法の1つはpjaxと呼ばれます:https ://github.com/rails/pjax_rails

古い答え...

helper_method次のように、を宣言します。

あなたのコントローラーで:

private
def find_stock
  ...
end
helper_method :find_stock

あなたの見解では:

<% find_stock.each do |stock| -%>

ドキュメント:http ://api.rubyonrails.org/classes/AbstractController/Helpers/ClassMethods.html#method-i-helper_method

于 2012-05-23T05:53:55.817 に答える
1

button_toビューヘルパーのドキュメントを確認できます

もちろん、これは 1 つの方法です。リモート オプションを使用して、AJAX リクエスト経由でこれを行うことができます。

于 2012-05-23T05:49:25.327 に答える