Rails 4: List of available datatypes
Where can I find a list of data types that can be used in Ruby on Rails 4? Such as
text string integer float date I keep learning about new ones and I'd love to have a list I could easily refer to.
Here are all the Rails 4 (ActiveRecord migration) datatypes:
:binary :boolean :date :datetime :decimal :float :integer :bigint :primary_key :references :string :text :time :timestamp  Source: http://api.rubyonrails.org/classes/ActiveRecord/ConnectionAdapters/SchemaStatements.html#method-i-add_column  
 These are the same as with Rails 3.  
If you use PostgreSQL, you can also take advantage of these:
:hstore :json :jsonb :array :cidr_address :ip_address :mac_address They are stored as strings if you run your app with a not-PostgreSQL database.
Edit, 2016-Sep-19:
There's a lot more postgres specific datatypes in Rails 4 and even more in Rails 5.
You might also find it useful to know generally what these data types are used for:
:string - is for small data types such as a title.  (Should you choose string or text?)  :text - is for longer pieces of textual data, such as a paragraph of information  :binary - is for storing data such as images, audio, or movies.  :boolean - is for storing true or false values.  :date - store only the date  :datetime - store the date and time into a column.  :time - is for time only  :timestamp - for storing date and time into a column.(What's the difference between datetime and timestamp?)  :decimal - is for decimals (example of how to use decimals).  :float - is for decimals.  (What's the difference between decimal and float?)  :integer - is for whole numbers.  :primary_key - unique key that can uniquely identify each row in a table  There's also references used to create associations. But, I'm not sure this is an actual data type.
New Rails 4 datatypes available in PostgreSQL:
:hstore - storing key/value pairs within a single value (learn more about this new data type)  :array - an arrangement of numbers or strings in a particular row (learn more about it and see examples)  :cidr_address - used for IPv4 or IPv6 host addresses  :inet_address - used for IPv4 or IPv6 host addresses, same as cidr_address but it also accepts values with nonzero bits to the right of the netmask  :mac_address - used for MAC host addresses  Learn more about the address datatypes here and here.
Also, here's the official guide on migrations: http://edgeguides.rubyonrails.org/migrations.html
It is important to know not only the types but the mapping of these types to the database types, too:


Source added - Agile Web Development with Rails 4
链接地址: http://www.djcxy.com/p/25114.html上一篇: 将NOW()设置为datetime数据类型的默认值?
下一篇: Rails 4:可用数据类型的列表
