それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

3分間Railsクッキング

RubyOnRailsの使い方まとめ

しばらく使ってないと忘れるので困る。
そこで、大きな流れをまとめておいた。

インストール
	gem install rails

sqlite3が無いとエラーになるので、aptitude install libsqlite3-devでsqlite3.hを入れる

railsディレクトリを作る
	rails new blog
		(デフォルトはsqlite。あとで変えられるのでなんでもいい
	cd blog
	ls blog
	README  Rakefile  app  config  db  doc  lib  log  public  script  test  tmp  vendor
データベースの設定
	config/database.yml
設定ファイルはこんな感じ
#MySQLの場合
development:
  adapter: mysql
  database: unicanet
  username: takuya
  password: *****
  timeout: 5000
#SQLiteの場合
development:
  adapter: sqlite3
  database: db/development.db  #ファイル名
  timeout: 5000
データベース作成
	rake db:create

既存のDBを使う場合

	rake db:scheme:dump #schema.rbが作成される
	rake db:scheme:load #DB初期化される。うっかり叩くと悲劇TT
はじめの第一歩
	script/generate controller home index
	script/server
ブラウザで確認
	http://localhost:3000/
モデルとScaffoldingを作る
	script/generate scaffold Post name:string title:string content:text
データベース構造変更のMigratationを書く
	class CreatePosts < ActiveRecord::Migration
	  def self.up
	    create_table :posts do |t|
	      t.string :name
	      t.string :title
	      t.text :content

	      t.timestamps
	    end
	  end

	  def self.down
	    drop_table :posts
	  end
	end
Migratation(データベース構造変更)
	rake db:migrate
モデルを動かしてみる
	script/console
	:irb> p = Post.new
SQLログを確認
	tail -f log/development.log

SQLがCacheされてることが確認出来るので嬉しい

コンソール(irb)にモデル変更を反映
	:irb> reload!