jQuery-ujsのインストール

Pocket
LINEで送る

この記事の所要時間: 56

jQuery依存症患者:実際にjQueryは直感的にスラスラとJavaScriptが記述できるから本当に使いやすい。

automated installationに従ってインストールすると失敗する。
rails/jquery-ujs – GitHub

remove  public/javascripts/controls.js
remove  public/javascripts/dragdrop.js
remove  public/javascripts/effects.js
remove  public/javascripts/prototype.js
fetching  jQuery (1.4.4)
identical  public/javascripts/jquery.js
identical  public/javascripts/jquery.min.js
fetching  jQuery UJS adapter (github HEAD)
C:/Ruby187/lib/ruby/1.8/net/http.rb:586:in `connect': SSL_connect returned=1 err
no=0 state=SSLv3 read server certificate B: certificate verify failed (OpenSSL::
SSL::SSLError)
from C:/Ruby187/lib/ruby/1.8/net/http.rb:586:in `connect'
from C:/Ruby187/lib/ruby/1.8/net/http.rb:553:in `do_start'
from C:/Ruby187/lib/ruby/1.8/net/http.rb:542:in `start'
from C:/Ruby187/lib/ruby/1.8/open-uri.rb:242:in `open_http'
from C:/Ruby187/lib/ruby/1.8/open-uri.rb:616:in `buffer_open'
from C:/Ruby187/lib/ruby/1.8/open-uri.rb:164:in `open_loop'
from C:/Ruby187/lib/ruby/1.8/open-uri.rb:162:in `catch'
from C:/Ruby187/lib/ruby/1.8/open-uri.rb:162:in `open_loop'
from C:/Ruby187/lib/ruby/1.8/open-uri.rb:132:in `open_uri'
from C:/Ruby187/lib/ruby/1.8/open-uri.rb:518:in `open'
from C:/Ruby187/lib/ruby/1.8/open-uri.rb:30:in `open'
...

jQuery, GitHub, SSL / Repo issues / Discussion Area – GitHub Support

代替方法としてManual Installationに従って入れる。

まずはjqueryを本家から取ってきてjavascriptsの下に入れる。

prototype.js版のrails.jsをhttps://github.com/rails/jquery-ujs/blob/v1.4/src/rails.jsのrails.jsに置き換える。そのまま上書き。

以下のような行があるのでコメントを外す。%w内のjquery部分はさっき取ってきたファイル名に置き換える。
application.jsも指定すると二重に読み込まれるようになるので注意。

[code lang=”ruby”]
config.action_view.javascript_expansions[:defaults] = %w(jquery-1.4.4.min rails)
[/code]

rails再起動。

サンプルアプリ

ビューには

[code lang=”ruby”]
<div>
<%= file_field_tag ‘pictures[]’ %><br />
<%= link_to ‘Add’, ”, :id => ‘add_file_link’ %>
</div>
[/code]

application.js内にadd_file_linkへのクリックイベントをバインド。

[code lang=”javascript”]
$(function () {
$(‘#add_file_link’).click(function () {
$(this).before(‘<input id="pictures_" name="pictures[]" type="file" /><br />’);
return false;
});
});
[/code]

うまくいくとポコポコ追加されてきます。

Rails2まではRJSが人気だったみたいだけど、Rails3でヘルパーメソッドめちゃくちゃ変更されて、link_to_remoteとかなくなったみたい。今後はUnobtrusive JavaScriptとかいう考え方でprototype.js指向ではなくなるらしい。ビヘイビアとプレゼンテーションの分離が主な目的?

投稿者紹介

株式会社ユニキャスト
私たちは、テクノロジに魅せられた個性あふれるメンバーによって構成された茨城県日立市に本社を構えるベンチャー企業です。 ”テクノロジを通して「驚き」と「感動」を創造し、人々の「夢」と「笑顔」を支えます。” の経営理念をモットーに明るい未来を描き、ワクワクする企画提案を続けて参ります。

人気の記事

コメント

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

PAGE TOP

%d人のブロガーが「いいね」をつけました。