パターン
- 普通のテーブル
- 外部キー制約
- validation
- index
- unique
普通のテーブル
単数形
カラム:データ型 カラム:データ型
カンマはいらない
rails g model Author name:string age:integer
外部キー制約
これでauthor_idがカラムに追加される。
rails g model Book title:string author:references
validation
modelに後から追加する。
Book.rb
class Book < ActiveRecord::Base
validates :title, presence: true
validates :hoge, length: { minimum: 2 }
end
index
特定のカラムをB木構造にして検索をかけるので、速い。ただ頻繁に使うカラムでないと逆に負債。
作成時↓
rails g model Book title:string:index
しかし、
rails g migration AddIndexToBook
等と打って、migrationファイルいじるほうが一般的かも知れない。
unique
uniqueでありたい時もありますね
rails g model Book title:string:unique