Rieles 4: lista de tipos de datos disponibles

¿Dónde puedo encontrar una lista de tipos de datos que se pueden usar en Ruby on Rails 4? Como

  • text
  • string
  • integer
  • float
  • date

Sigo aprendiendo sobre los nuevos y me encantaría tener una lista a la que pudiera referirme fácilmente.

Aquí están todos los tipos de datos de Rails 4 (migración de ActiveRecord):

  • :binary
  • :boolean
  • :date
  • :datetime
  • :decimal
  • :float
  • :integer
  • :bigint
  • :primary_key
  • :references
  • :string
  • :text
  • :time
  • :timestamp

Fuente: http://api.rubyonrails.org/classes/ActiveRecord/ConnectionAdapters/SchemaStatements.html#method-i-add_column
Estos son los mismos que con Rails 3 .

Si usa PostgreSQL, también puede aprovechar estos:

  • :hstore
  • :json
  • :jsonb
  • :array
  • :cidr_address
  • :ip_address
  • :mac_address

Se almacenan como cadenas si ejecuta su aplicación con una base de datos no PostgreSQL.

Editar, 2016-Sep-19:

Hay muchos más tipos de datos postgres específicos en Rails 4 y aún más en Rails 5.

También puede ser útil saber en general para qué se usan estos tipos de datos:

  • :string – es para tipos de datos pequeños, como un título. ( ¿Deberías elegir cadena o texto? )
  • :text : es para fragmentos más largos de datos textuales, como un párrafo de información
  • :binary : sirve para almacenar datos como imágenes, audio o películas.
  • :boolean – es para almacenar valores verdaderos o falsos.
  • :date – almacene solo la fecha
  • :datetime : almacena la fecha y la hora en una columna.
  • :time – es solo por tiempo
  • :timestamp : para almacenar la fecha y la hora en una columna. ( ¿Cuál es la diferencia entre datetime y timestamp? )
  • :decimal – es para decimales ( ejemplo de cómo usar decimales ).
  • :float – es para decimales. ( ¿Cuál es la diferencia entre decimal y flotante? )
  • :integer – es para números enteros.
  • :primary_key : clave única que puede identificar de forma única cada fila en una tabla

También hay referencias utilizadas para crear asociaciones. Pero, no estoy seguro de que este sea un tipo de datos real .

Nuevos tipos de datos de Rails 4 disponibles en PostgreSQL:

  • :hstore : almacena los pares de clave / valor dentro de un único valor ( obtenga más información sobre este nuevo tipo de datos )
  • :array – una disposición de números o cadenas en una fila en particular ( aprenda más sobre esto y vea ejemplos )
  • :cidr_address : se usa para direcciones de host IPv4 o IPv6
  • :inet_address : se usa para direcciones de host IPv4 o IPv6, igual que cidr_address, pero también acepta valores con bits distintos de cero a la derecha de la máscara de red
  • :mac_address : se usa para direcciones de host MAC

Obtenga más información sobre los tipos de datos de dirección aquí y aquí .

Además, aquí está la guía oficial sobre migraciones: http://edgeguides.rubyonrails.org/migrations.html

Es importante conocer no solo los tipos, sino también la asignación de estos tipos a los tipos de bases de datos:

enter image description here

enter image description here


Fuente añadida: desarrollo web ágil con Rails 4

Puede acceder a esta lista cada vez que quiera (incluso si no tiene acceso a Internet) a través de:

 rails generate model -h 

Rails4 tiene algunos tipos de datos agregados para Postgres.

Por ejemplo, Railscast # 400 nombra dos de ellos:

Rails 4 tiene soporte para tipos de datos nativos en Postgres y aquí mostraremos dos, aunque se admiten muchos más: array y hstore. Podemos almacenar matrices en una columna de tipo cadena y especificar el tipo para hstore.

Además, también puedes usar cidr, inet y macaddr. Para más información:

https://blog.engineyard.com/2013/new-in-rails-4