7

ビューで使用する JavaScript ファイルがあります。そこには Ruby コードが必要でrender、Ruby で行う必要があるため、アセット パイプラインに JavaScript ファイルを配置できないことは理解しています。ファイルと同じビューフォルダーに入れることができ.html.erbます。

JavaScript ファイルをインクルードする方法、またはその JavaScript ファイルをそのビュー ファイルに使用する方法を教えてください。ファイルのスクリプトをjavascript_include_tag使用して(アセットパイプラインを使用しているように見えます)、ファイル()と同じ名前をファイル( )に付けてみましたが、すべて役に立ちませんでした。src="myfile.js"myfile.js.erbmyfile.jsjs.erbusers.js.erb.html.erbusers.html.erb

4

2 に答える 2

7

javascript_include_tag は、ビュー フォルダー自体で宣言された js.erb では機能しません。JavaScript を使用する方法は 3 つあります。

1] ビュー、つまり html.erb 自体にコードを記述します。

2] public/javascripts フォルダーに js ファイルを作成し、javascript_include_tag を使用してインクルードします。

3] Ajaxとしてリクエストしたい場合:

  • アクションの名前と同じ名前でビュー フォルダー自体に js.erb を作成します。
  • このアクションを呼び出すフォームが作成されたビューで、 を使用してリクエストを行い:remote => trueます。
  • 呼び出されたアクションでは、次のようにコードを使用します。

    def action
      respond_to do |format|
        format.js
      end
    end
    
于 2013-08-26T06:11:15.583 に答える