railsdにてデータベース設計時のデータ型
string 文字列型
text テキスト(不定長文字列)型
integer 整数型
float 浮動小数点数型
decimal 固定長整数型
datetime 日時型
timestamp タイムスタンプ型
time 時刻型
date 日付型
binary バイナリ文字列型
boolean 真偽値型
references 他のテーブルへの外部キーの定義、_id が付いた整数
railsdにてデータベース設計時のカラム制約(mysql)
null: false カラムにnullを許可しない
unique: true カラムに同じ値を許可しない
foreign_key: true 他のテーブルへの外部キー制約をつける indexも自動付与
default: "oooooo" カラムに値が設定されなかった場合にデフォルトで格納される値を設定。
limit: 50 データ型の最大幅を指定。
対象となるデータ型は文字列タイプはstring型とtext型の2つ、数値タイプはinteger型とbinary型の2つ。
precision: 10, scale: 5 指定することで精度(最大桁数)とスケール(小数点以下の桁数)を指定。
対象となるデータ型は文字列タイプはdecimal型。
railsdにてデータベース設計時のアソシエーション
-
対象を1つ持っているなら、has_one
- has_oneは自分のテーブルが対象テーブルを1つ持っている(複数持たない)場合に使います。対象テーブル側に自分のidのカラムがある場合に使います。
-
対象を複数持っているなら、has_many
- has_manyは自分のテーブルが対象テーブルを複数もつ場合に使います。対象テーブル側に自分のidのカラムがある場合に使います。
-
自分が対象に所属しているなら、belongs_to
- belongs_toは、自分のテーブルが対象テーブルのレコードに所属する(対象テーブルのidカラムがある)場合に使います。