1. sonoshou
Changes in body
Source | HTML | Preview
@@ -1,160 +1,160 @@
# 目的
vagrant環境上に、railsプロジェクトを作成した際にハマった点をメモする。
# 前提
windows環境にvagrantを入れて、rails 4.2.4プロジェクトを作成する。
- vagrant (CentOS6.5)
- ruby 2.1.7 (rbenv)
- rails 4.2.4
vagrantのインストールは、
[Windows上でVirtualBox+Vagrant+CentOSによる仮想環境構築|Qiita @hiroyasu55](http://qiita.com/hiroyasu55/items/11a4c996b0c62450940f)
ruby + railsのインストールは、
[rails環境構築(CentOS + ruby on rails)|Qiita @shinyashikis@github](http://qiita.com/shinyashikis@github/items/3501c5f7f71a8e345c3d)
上記を参考にした。
# 新規rails4.2.4プロジェクトの作成
### 1. `rails new` コマンドで新しいプロジェクトを作成。
自動的に、`bundle install`を行わないように、`-- skip-bundle`オプションをつける。
```
rails new project_name --skip-bundle
```
下記でも可。
```
rails new project_name -B
```
### 2. Gemfileの編集
therubyracerの行をコメントインする。
JavaScript のエンジンv8を Ruby から使えるようにする。
```
vim Gemfile
```
### 3. gemのインストール
このとき、環境に依存しないように、pathを指定する。
```
bundle install --path=vendor/bundle
```
####**ハマりポイント1**
railsのプロジェクトがWindowsとvagrant上のCentOSの共有フォルダ内である場合、
上記コマンドが失敗する場合がある。
この場合は、pathを共有フォルダ以外に指定する必要がある。
以下に例を示す。
```
bundle install --path=~/bundle/project_name
```
以上は、下記のブログを参照した。
[Vagrant環境でのbundle installで失敗する|tamo's blog](https://tamosblog.wordpress.com/2015/02/22/bundle-install_on_vagrant/)
### 4. WEBrick起動
WEBrick起動
```
bundle exec rails s
```
`http://localhost(or IP):3000` にアクセス。
####**ハマりポイント2**
Vagrantを使用している場合は、ポート番号とIPアドレスを指定する必要がある。
IPアドレスがわからない場合は、 `ifconfig` で調べる。
ポート番号はデフォルトポート3000番を使用する場合、省略可能である。
```
bundle exec rails s (-p 3000) -b 192.168.33.10
```
上記のようにポート番号とIPアドレスを指定した場合、以下のようにアクセス。
```
-http://192.168.33.103000
+http://192.168.33.10:3000
```
# オプション
以下は、お好みで。
## 不要なログを削除する
本節は、下記のブログを大いに参考にしました。
[Railsメモ(21) : quiet_assetsでアセットパイプラインのログを出力しないようにする |もた日記](http://wonderwall.hatenablog.com/entry/2015/08/17/100039)
WEBrick起動中、IPアドレスやアセットパイプラインのログが出る場合がある。
これらが不要の場合は、以下を行う。
### IPアドレスのログの非表示
`config/environments/development.rb`に以下を追加する。
```
Rails.application.configure do
config.web_console.whitelisted_ips = '192.168.33.1'
end
```
### アセットパイプラインのログの非表示
Gemfileに以下を追加して、 `bundle install` を実行する。
```
group :development do
gem 'quiet_assets'
end
```
一時的にログを出力したい場合は、 `config/application.rb` に下記行を追加。
```
config.quiet_assets = false
```
## Hamlを利用する
本節は、下記のブログを大いに参考にしました。
[Rails 4 で Haml を利用する手順|Qiita @ hkusu](http://qiita.com/hkusu/items/acd487eec4bbfc9fed2f)
### 1. Gemfileに追加
```
gem 'haml-rails'
gem 'erb2haml'
```
### 2. `bundle install` を実行
ちなみに、 `.bundle/config` に `vendor/bundle` の場所を保存してあるので、
2回目以降は、 `path` を指定する必要はない。
```
bundle install
```
### 3. `rake haml` の実行
```
./bin/rake haml:replace_erbs
```
以上で、元からある.erbファイルが.hamlファイルに変換され、
hamlが使用されることがrailsに伝わる。