Ruby on Rails 4で使用できるデータ型のリストはどこにありますか?といった
text
string
integer
float
date
私は新しいものについて学び続けていて、私が簡単に参照できるリストを持っていたいです。
これがすべてのRails 4(ActiveRecordの移行)データ型です。
:binary
:boolean
:date
:datetime
:decimal
:float
:integer
:bigint
:primary_key
:references
:string
:text
:time
:timestamp
ソース: http://api.rubyonrails.org/classes/ActiveRecord/ConnectionAdapters/SchemaStatements.html#method-i-add_column
これらは Rails 3 と同じです。
PostgreSQLを使用している場合は、これらも利用できます。
:hstore
:json
:jsonb
:array
:cidr_address
:ip_address
:mac_address
アプリをPostgreSQL以外のデータベースで実行した場合、それらは文字列として格納されます。
編集、2016年9月19日:
また、これらのデータ型が何のために使用されているのかを一般的に知っておくと便利です。
:string
- タイトルなどの小さいデータ型用です。 ( 文字列とテキストのどちらを選ぶべきですか? ):text
- 段落情報などの長いテキストデータ用:binary
- 画像、音声、映画などのデータを保存するためのものです。:boolean
- trueまたはfalseの値を格納するためのものです。:date
- 日付だけを保存する:datetime
- 日付と時刻を列に格納します。:time
- 時間専用です:timestamp
- 日付と時刻を列に格納するためのものです( datetimeとtimestampの違いは何ですか? ):decimal
- 小数のためのものです( 小数の使い方の例 )。:float
- 小数用です。 ( decimalとfloatの違いは何ですか? ):integer
- 整数用です。:primary_key
- テーブル内の各行を一意に識別できる一意のキー関連付けを作成するための参照もあります。しかし、 これが実際のデータ型かどうかはわかりません 。
PostgreSQLで利用可能な新しいRails 4データ型:
:hstore
- 単一の値にキーと値のペアを格納する( この新しいデータ型の詳細 ):array
- 特定の行の数字や文字列の配置( それについてもっと学び、例を見てください ):cidr_address
- IPv4またはIPv6ホストアドレスに使用されます:inet_address
- cidr_addressと同じ、IPv4またはIPv6ホストアドレスに使用されますが、ネットマスクの右側にゼロ以外のビットがある値も受け入れます。:mac_address
- MACホストアドレスに使用されます住所データ型の詳細については、 here および here を参照してください。
また、これは移行に関する公式ガイドです: http://edgeguides.rubyonrails.org/migrations.html
あなたは(インターネットにアクセスできない場合でも)あなたが望むときはいつでもこのリストにアクセスすることができます:
Rails generate model -h
Rails4にはPostgres用のデータ型がいくつか追加されています。
たとえば、railscast#400はそのうちの2つを示しています。
Rails 4はPostgresのネイティブデータ型をサポートしています。ここではそのうちの2つを紹介します。配列を文字列型の列に格納して、hstoreの型を指定できます。
その他にも、cidr、inet、macaddrを使うことができます。詳細については: