JRuby-railsアプリ(1)
■rails3.0.3起動する
>cd c:\rails\license[アプリroot]
>jruby script/rails server
□mysql2が足りないエラーが出てくる場合
・〜Gemfileのgem 'mysql2' → gem 'ruby-mysql'にする
・〜\config\database.ymlのadapter: mysqlにする
□uninitialized constant Mysql::Protocol::UNIXSocketエラー出る場合
・〜\config\database.ymlのlocalhost →127.0.0.1にする
■コントローラと作成
rails generate controller [コントローラ名] [アクション名1] [アクション名2]...
作成したブラウザで表示用のhtml.erbファイルは、
app\views\[コントローラ]下にある
htmlの書き方と似てる気がする(調査中)
■mysqlでのDB関連
1.scaffold
→ アプリの土台をコマンド一発で作ってくれる仕組みです
>cd c:\rails\license[アプリroot]
>rails generate scaffold users name:string age:string
2.テーブル作成
→ usersというテーブルが作成され、
>jruby -S rake db:migrate
その中で、id,name,age,created_at、updated_atというカラムが作成された
3.railsサーバーを再起動
4.http://localhost:3000/users/で動作を確認する
NameとAgeのtextfieldがあって、[Update User]ボタン押すと、
users tableにデータが保存されるはず
■実行環境
・development
→migration実行、webサーバー起動時のデフォルト環境
MVC修正しても、再起動せずに反映される
cacheがonになってない
・test
→テスト環境のDBはテスト前に毎回初期化されるので、
ここに重要なデータを保存してはいけない
cacheがon
・production
→アプリを本稼動させる環境
エラーメッセージユーザー向け
cacheがon
・ステージング環境
→railsに付属してない