Ruby on Rails3 画像ファイルアップロード用に「Carrierwave」をインストール

画像ファイルアップロード用に「Carrierwave」をインストールした。

[環境]
Windows8
Ruby 1.9.3(p125)
Ruby on Rails 3.2.9


Gemfileに下記のように記述する。

gem "carrierwave", "~> 0.8.0"

コマンドプロンプトでbundle installを実行する。

bundle insatall

アップロード用のクラスを生成するため、コマンドプロンプトで下記を実行する。

rails g uploader image

コマンドプロンプトでtemplateというモデル等を作成する。

rails g scaffold template name:string image:string

モデルに紐づける。
\app\models\template.rbに追記する。

class Template < ActiveRecord::Base
  attr_accessible :image, :name
  mount_uploader :image, ImageUploader #これを追加
end

ビューの修正。
\app\views\templates\new.html.erbを修正する。

# <%= form_for(@template) do |f| %>  修正前
<%= form_for @template, :html => {:multipart => true} do |f| %> # 修正後# <%= f.text_field :image %>  修正前
<%= f.file_field :image %> # 修正後

\app\views\templates\show.html.erbを修正する。

# <%= @template.image %>  修正前
<%= image_tag @template.image.to_s %> # 修正後


参考:
Railsでcarrierwaveを使って画像ファイルのアップロード
【Rails3】CarrierWaveで画像ファイルのアップロード - HomeBrewStudioの約3行日記