私は機能を分離するという考えが好きで、これは未来の方法のようです.
しかし、Rails ERB や PHP などの組み込み言語のループ内に JavaScript を統合することに慣れています。この言語では、特定のオブジェクトの ID を JavaScript の参照として使用できます。
レールの例:
<% @comments.each do |comment| %>
<div id="comment_<%= comment.id %>">
<%= comment.text %>
<% link_to_function "Reply", "$('comment_#{comment.id}').insert(\"#{escape_javascript(render :partial => "_form", :locals => {:comment => comment})}\", {position: 'bottom'});" %>
</div>
<% end %>
Ruby のメソッドを JavaScript 内で使いたいと思ったのはこれだけではありません。定数を使用したり、ループuser.enabled?
または内のオブジェクトで他の ruby メソッドを呼び出したりuser.full_name
、それらのオブジェクトでパーシャルをレンダリングしたりしたい場合があります。
では、すべての JavaScript が別のファイルまたはループの外にある場合、これはどのように達成されるのでしょうか? CSS セレクターを使用して、javascript で一連の div を反復処理できることはわかりましたが、これでは、オブジェクトに対して ruby メソッドを呼び出すことができません。
私は何が欠けていますか?ありがとう!