2011-07-20 16 views
1

私はRuby on Railsの世界の初心者です。数週間前に私はLyndaの良いRubyガイドをたどって、プロジェクトをセットアップする方法を知っています。とにかく、私はhtml/cssでウェブサイトを作ったが、結局私は仕事に行きました。フォルダやレールのファイルを "ダンプ"するだけで、それらを選ぶだけでなく、私のサイトにいくつかの行のjavascriptコードがあり、jqueryを「アクティブにする」ことができます。私のヘッダーにありましたRuby on rails3 javascriptコードを置く場所

ここで簡単な質問は、レールに実際にはないので、このコードをどこに置くのですか。

答えて

1

は、レイアウトとレンダリングのために、このページをチェックしてください:http://guides.rubyonrails.org/layouts_and_rendering.html

あなたのERBテンプレートをレンダリングする程度がセクションがあります。通常のHTMLページと同じように、頭字語の.erbテンプレートにjavascriptコードを入れる必要があります。

普通のHTMLと同じように、スクリプトタグの内容を.jsファイルに保存し、テンプレートのリンクを作成することができます。

1

あなたのJSを配置することができます:それは通常の.jsで公開/ javscripts下

  • を扱うERBテンプレートで

    • はあなたがjavascript_include_tagヘルパー
    • を使用して、テンプレートに含めることができ、そのファイルajaxian /マニュアルの別々の.js.erbテンプレートファイルには、目的

    を含める提案につきEDITED、:

    個人的には、私はあなたが探していると思われるものであるため、より多くのConvention over Configuration、または「Rails」の方法であるため、最後の2つのうちの1つを選択したいと思います。

  • +0

    最後に、あなたの最後の文章を説明することもできます。ブードゥー・プログラミングはそのような記述から生まれます。 – Jordan

    +0

    私はpublic/javascriptフォルダの "jquery_slider.js"ファイルにコードを書き込もうとしましたが、役立たないようです。だから私はあなたの最初の選択肢を試みるつもりですが、ジョーダンのように私はそれについて悪いことを知りたいと言いました。 – alucardu

    +0

    テストとして機能するincludeタグの@Nickの応答を参照してください。ただし、インクルードを<%= javascript_include_tag:name_of_js_file%>に変更してください。私が与えた最初の選択は、HTMLファイルにjavascriptを直接組み込むのと同じように悪いことです。 HTML/javascript/cssを同じファイルにまとめると、管理が難しいプロジェクトが作成されます。 – WattsInABox

    0

    パブリック/ javascriptのすべてのスクリプトを、コントローラ/アクション名+ベンダーディレクトリと共通ディレクトリを反映するディレクトリ構造に入れました。私のapplication.html。*には、コントローラ/アクションに必要なものをヘッダにロードするコードがあります。私は.haml(.erb)ファイルにjavascriptを挿入しないように努力していますが、もし必要ならばそのルールを破りたいと思っています。

    0

    Rails 3.1までは、public/javascripts/に入れます。

    また、テンプレートにjavascriptを含めていることを確認してください。ロードの理由

    <% javascript_include_tag :all %> 
    
    +0

    Railsは自動的にそのフォルダのすべてのjsファイルをヘッダに入れませんか? – alucardu

    +0

    いいえ。アプリケーションテンプレートファイルの ' 'ブロックに' <%javascript_include_tag:all%> 'を追加した場合のみです。 –

    0

    、あなたではなく始まり(例:ヘッダーに呼ばれる)に比べて、テンプレートをロードした後に呼び出される特定のJavaScriptスニペットをしたくないですか?

    関連する問題