Rails3プラグイン特集

ruby on rails3を使っていると、Rails2と違いどんなプラグインがあるのか気になりますよね。そこで、今現在知っているプラグインについてまとめました。

1、Bundler

  • プロジェクトから参照しているgemの管理
  • 複数のgemのバージョン不整合問題の解決(依存関係の解決)
  • 特定のバージョンへのロック
  • gemの一括インストール
  • 実行時のロードパスを絞った読み込み
  • gemでないものをgemとして参照
  • gemの依存関係のグラフの出力

依存関係の可視化

bundle viz

コマンド

Bundlerの動き
1、Gemfileをすべて読み込んで、gemの依存関係を調査します。
2、Gemfile.lockと言う名前のファイルに保存される。

実行方法

bundle

または

bundle install

2、warden + rails_warden
wardenはRackのレイヤで認証処理を行うための汎用的な認証ライブラリ

3、DataMapper
ActiveRecordより進化したO/Rマッパ

4、jquery-ujis
Rails3で使えるjquery

5、haml
俳句のような美しいマークアップ言語
Pythonのようにインデントを使って論理構造を表現できる。

6、RSpec2.0
 英文で書かれたような「動作する仕様書」
 BBD(振る舞い駆動開発)
 設定インストール方法

r g rspec:install

7、factory-girl

8、carrierwave
プラガブルなファイルアップローダ

9、delayed_job
「あとでやる。」
非同期処理を制御するためのライブラリ
メール送信やシステム間関連といった時間のかかる処理の実行を
後回しにすることでレスポンスタイムの短縮をはかることができます。

10、steak + Capybara
Rubyで自然に書けるインテグレーションテスト

javascript + Ajaxにもしっかり対応している。

Cucumberは、自然言語であるものjavascript + Ajaxには対応していない。

Debianのapache2で文字化けを回避するには?〜Apache関係

Apache2ではデフォルトでUTF-8文字コードで表示されるように設定されている様で、SHIFT_JISUTF-8以外の文字コードで書かれたページを開いた場合に文字化けしてしまう事がある。

 こういう時は、Debianでは、

#vi /etc/apache2/apache2.conf

#AddDefaultCharset ISO-8859-1

AddDefaultCharset off

のようにデフォルトで無指定に指定すれば上手く行く。

rails3実践チュートリアル

rails3の学習で参考になるサイト
http://www.slideshare.net/yalab/rails3

ruby1.9.1をインストール

rvm 1.9.1

ruby 1.9.1をデフォルトとする。

rvm 1.9.1 --default

gem コマンドでrails3に必要な関連ツールをインストール

gem i rails

アプリケーション生成

rails new blog_app

投稿の「scaffold」

rails g scaffold post title:string body:text

gは、「generate」の短縮形として作成

rails3からジェネレータベースでThorというライブラリが付いた
generateしているときに色が付くのはこのおかげ。

サーバー起動

rails s

起動したら下記にアクセス
http://localhost:3000/posts

FTPサーバのインストール(Linux)

参考サイト

http://saba.nitty-gritty.org/250ftp/ftp.html

yumにてインストール

yum install vsftpd

どこにインストールされたか調べる。

whereis vsftpd

ftpを起動

service vsftpd start

クライアントにて下記のコマンドにて接続できるどうか試す。

C:\> ftp (サーバのIPアドレス) 
Connected to (サーバのIPアドレス)
220 (vsFTPd 2.0.3)
User ((サーバのIPアドレス):(none) ): [ここにユーザ名]
331 Please specify the password.
Password : [ ここにパスワード ]
230 Login successful

バージョン管理ツールGITをyumでインストールする方法

# yum --enablerepo=rpmforge -y install git

Loading "downloadonly" plugin
Loading "fastestmirror" plugin
Loading mirror speeds from cached hostfile
* rpmforge: fr2.rpmfind.net
* base: ftp2.riken.jp
* updates: ftp.daum.net
* addons: ftp2.riken.jp
* extras: ftp.hostrino.com
Setting up Install Process
Parsing package install arguments
Resolving Dependencies

Dependencies Resolved

=============================================================================
Package Arch Version Repository Size
=============================================================================
Updating:
subversion i386 1.5.5-0.1.el5.rf rpmforge 5.5 M
Installing for dependencies:
git i386 1.5.2.1-1.el5.rf rpmforge 27 M
perl-Error noarch 0.17015-1.el5.rf rpmforge 27 k
perl-Git i386 1.5.2.1-1.el5.rf rpmforge 18 k
rcs i386 5.7-30.1 base 332 k
subversion-perl i386 1.5.5-0.1.el5.rf rpmforge 2.1 M

Transaction Summary
=============================================================================
Install 5 Package(s)
Update 1 Package(s)
Remove 0 Package(s)

Total download size: 35 M
Downloading Packages:
(1/6): subversion-1.5.5-0 100% |=========================| 5.5 MB 00:19
(2/6): perl-Git-1.5.2.1-1 100% |=========================| 18 kB 00:00
(3/6): subversion-perl-1. 100% |=========================| 2.1 MB 00:07
(4/6): git-1.5.2.1-1.el5. 100% |=========================| 27 MB 01:05
(5/6): rcs-5.7-30.1.i386. 100% |=========================| 332 kB 00:00
(6/6): perl-Error-0.17015 100% |=========================| 27 kB 00:00
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Updating : subversion ######################### [1/7]
Installing: subversion-perl ######################### [2/7]
Installing: rcs ######################### [3/7]
Installing: perl-Error ######################### [4/7]
Installing: perl-Git ######################### [5/7]
Installing: git ######################### [6/7]
Cleanup : subversion ######################### [7/7]

Dependency Installed: git.i386 0:1.5.2.1-1.el5.rf perl-Error.noarch 0:0.17015-1.el5.rf perl-Git.i386 0:1.5.2.1-1.el5.rf rcs.i386 0:5.7-30.1 subversion-perl.i386 0:1.5.5-0.1.el5.rf
Updated: subversion.i386 0:1.5.5-0.1.el5.rf
Complete!