web-dev-qa-db-fra.com

Rails 4: Liste des types de données disponibles

Où puis-je trouver une liste de types de données pouvant être utilisés dans Ruby sur Rails 4? Tel que

  • text
  • string
  • integer
  • float
  • date

Je continue à en apprendre de nouvelles et j'aimerais avoir une liste à laquelle je pourrais facilement me référer.

378
Nicolas Raoul

Voici tous les types de données Rails 4 (migration ActiveRecord):

  • :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
Ce sont les mêmes qu'avec Rails .

Si vous utilisez PostgreSQL, vous pouvez également en tirer parti:

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

Ils sont stockés sous forme de chaînes si vous exécutez votre application avec une base de données non-PostgreSQL.

Edit, 2016-Sep-19:

Il y a beaucoup plus types de données postgres dans Rails 4 et encore plus dans Rails 5.

633
Nicolas Raoul

Vous pouvez également trouver utile de savoir généralement à quoi servent ces types de données:

Il y a aussi des références utilisées pour créer des associations. Mais, je ne suis pas sûr qu'il s'agisse d'un type de données réel .

Nouveaux Rails 4 types de données disponibles dans PostgreSQL:

  • :hstore - stockage des paires clé/valeur dans une seule valeur ( en savoir plus sur ce nouveau type de données )
  • :array - un arrangement de nombres ou de chaînes dans une rangée particulière ( en savoir plus et voir des exemples )
  • :cidr_address - utilisé pour les adresses d'hôte IPv4 ou IPv6
  • :inet_address - utilisé pour les adresses d'hôte IPv4 ou IPv6, identique à cidr_address mais accepte également les valeurs avec des bits non nuls à droite du masque de réseau
  • :mac_address - utilisé pour les adresses d'hôte MAC

En savoir plus sur les types de données d'adresse ici et ici .

En outre, voici le guide officiel sur les migrations: http://edgeguides.rubyonrails.org/migrations.html

240
lflores

Il est important de connaître non seulement les types mais aussi le mappage de ces types sur les types de base de données:

enter image description here

enter image description here


Source ajoutée - Développement Web agile avec Rails 4

155
gotqn

Vous pouvez accéder à cette liste à tout moment (même si vous n’avez pas accès à Internet) via:

Rails generate model -h
79
tomascharad

Rails4 a quelques types de données ajoutés pour Postgres.

Par exemple, railscast # 400 en nomme deux:

Rails 4 prend en charge les types de données natifs dans Postgres et nous en montrerons deux ici, bien que beaucoup d’autres soient supportés: array et hstore. Nous pouvons stocker des tableaux dans une colonne de type chaîne et spécifier le type pour hstore.

En outre, vous pouvez également utiliser cidr, inet et macaddr. Pour plus d'informations:

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

5
Peter de Ridder