仕事ではまだRails3はやったことないのですが、そんな事言っているといつまでたっても触る機会もなさそうなので、ちょっとしたJavaScriptなんかを試したい時用のプロジェクトをRails3で一個作っておこうと思いやってみました。
とりあえず、Rails3をインストール。
gem install rails
ちょこっとしたJavaScriptとかを試したい時用のプロジェクトなので、 js_spikeって名前でプロジェクトを作ってみる。
rails new js_spike
public/javascripts下を覗いてみるとデフォルトでは例によってPrototypeになっているようです。
-rw-rw-r-- 1 satoyan satoyan    148 Feb 28 15:52 application.js
-rw-rw-r-- 1 satoyan satoyan  34787 Feb 28 15:52 controls.js
-rw-rw-r-- 1 satoyan satoyan  31056 Feb 28 15:52 dragdrop.js
-rw-rw-r-- 1 satoyan satoyan  38467 Feb 28 15:52 effects.js
-rw-rw-r-- 1 satoyan satoyan 162353 Feb 28 15:52 prototype.js
-rw-rw-r-- 1 satoyan satoyan   6278 Feb 28 15:52 rails.js
jquery-railsというgemを入れるとクライアントサイドのスクリプトをすべてjQueryのものに置き換えてくれるようなのでそれをインストールしてみる。 Gemfileに 下の一行を追加。
	gem 'jquery-rails'
bunldle install を実行
	#bundle install を実行
	
	Fetching source index for http://rubygems.org/
	Using rake (0.8.7) 
	Using abstract (1.0.0) 
	Using activesupport (3.0.5) 
	Using builder (2.1.2) 
	Using i18n (0.5.0) 
	Using activemodel (3.0.5) 
	Using erubis (2.6.6) 
	Using rack (1.2.1) 
	Using rack-mount (0.6.13) 
	Using rack-test (0.5.7) 
	Using tzinfo (0.3.24) 
	Using actionpack (3.0.5) 
	Using mime-types (1.16) 
	Using polyglot (0.3.1) 
	Using treetop (1.4.9) 
	Using mail (2.2.15) 
	Using actionmailer (3.0.5) 
	Using arel (2.0.9) 
	Using activerecord (3.0.5) 
	Using activeresource (3.0.5) 
	Using bundler (1.0.10) 
	Using thor (0.14.6) 
	Using railties (3.0.5) 
	Using rails (3.0.5) 
	Installing jquery-rails (0.2.7)  #インストールされました...
	Using sqlite3 (1.3.3) 
"rails g" でgenerator一覧を見てみると新たにjQueryの欄ができています。
	#rails g でgeneratorのヘルプを見てみる
	
	Usage: rails generate GENERATOR [args] [options]

	General options:
	  -h, [--help]     # Print generator's options and usage
	  -p, [--pretend]  # Run but do not make any changes
	  -f, [--force]    # Overwrite files that already exist
	  -s, [--skip]     # Skip files that already exist
	  -q, [--quiet]    # Suppress status output

	Please choose a generator below.

	Rails:
	  controller
	  generator
	  helper
	  integration_test
	  mailer
	  migration
	  model
	  observer
	  performance_test
	  plugin
	  resource
	  scaffold
	  scaffold_controller
	  session_migration
	  stylesheets

	Jquery:
	  jquery:install
	
使い方を jquery:install で表示してみる。
	#rails g jquery:install --help
	
	Usage:
	  rails generate jquery:install [options]

	Options:
	  [--version=VERSION]  # Which version of jQuery to fetch
	                       # Default: 1.5
	  [--ui]               # Include jQueryUI

	Runtime options:
	  -s, [--skip]     # Skip files that already exist
	  -p, [--pretend]  # Run but do not make any changes
	  -q, [--quiet]    # Supress status output
	  -f, [--force]    # Overwrite files that already exist

	This generator downloads and installs jQuery, jQuery-ujs HEAD, and (optionally) the newest jQuery UI
	
バージョンの指定とjQueruyUIを使うかどうかの指定ができるらしいので、さっそく実行してみる。
	#rails g jquery:install --ui --force
	
    remove  public/javascripts/controls.js
    remove  public/javascripts/dragdrop.js
    remove  public/javascripts/effects.js
    remove  public/javascripts/prototype.js
  fetching  jQuery (1.5)
    create  public/javascripts/jquery.js
    create  public/javascripts/jquery.min.js
  fetching  jQuery UI (latest 1.x release)
    create  public/javascripts/jquery-ui.js
    create  public/javascripts/jquery-ui.min.js
  fetching  jQuery UJS adapter (github HEAD)
     force  public/javascripts/rails.js
	
public/javascripts下を覗いてみると、jquery関連のファイルが生成されていました。
  # ll public/javascripts
	-rw-rw-r-- 1 satoyan satoyan    148 Feb 28 16:25 application.js
	-rw-rw-r-- 1 satoyan satoyan 216840 Feb 28 16:40 jquery.js
	-rw-rw-r-- 1 satoyan satoyan  85260 Feb 28 16:40 jquery.min.js
	-rw-rw-r-- 1 satoyan satoyan 367486 Feb 28 16:40 jquery-ui.js
	-rw-rw-r-- 1 satoyan satoyan 198792 Feb 28 16:40 jquery-ui.min.js
	-rw-rw-r-- 1 satoyan satoyan   5033 Feb 28 16:40 rails.js
でもpublic/stylesheets下にはjQueryUI用のCSSはできてないようです。 あれもなきゃだめじゃん、と言うことでCSSはGoogleCDNを利用することにします。 とりえあず redmondというテーマのものを使うようにapplicataion.html.erbに書きこんでおく。
	  <%= stylesheet_link_tag :all %>
	  <%= javascript_include_tag :defaults %>
	  <%= csrf_meta_tag %>
		<%= stylesheet_link_tag "https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.10/themes/redmond/jquery-ui.css" %>
とりあえず、こんな感じでjQueryの設定はできました。CSSもやってくれないと不便なような気がするんだけどなー、、、、。
使い方知らないだけ?