158 votes

Les types de données de Rails 3 ?

Où puis-je trouver une liste des types de données qui peuvent être utilisés dans rails 3 ? (tels que texte, chaîne de caractères, entier, flottant, date, etc.) Je continue à en découvrir de nouveaux au hasard, mais j'aimerais avoir une liste à laquelle je pourrais facilement me référer.

270voto

Nicolas Raoul Points 13912
Voici tous les types de données de Rails3 (migration ActiveRecord) :

binaire

booléen
date
datetime
décimal
float
integer
primary_key Références
string
texte
temps
timestamp

Source : http://api.rubyonrails.org/classes/ActiveRecord/ConnectionAdapters/TableDefinition.html#method-i-column

67voto

gotqn Points 4247

Il est important de connaître non seulement les types, mais aussi la correspondance entre ces types et les types de base de données :

enter image description here

enter image description here

Par exemple, notez que dans MS SQL Server nous utilisons :

  1. l'ancien "datetime" au lieu de "datetime2".
  2. décimal avec sa précision par défaut
  3. texte et varchar au lieu de nvarchar
  4. int (impossible d'utiliser tiny int/small int/big int)
  5. image au lieu de BLOB

26voto

Tim Stephenson Points 725

Voulez-vous dire pour définir les migrations d'enregistrements actifs ? ou voulez-vous dire les types de données Ruby ?

Voici un lien qui peut vous aider à créer des migrations :

http://www.orthogonalthought.com/blog/index.php/2007/06/mysql-and-ruby-on-rails-datatypes/

16voto

lflores Points 1004

Il peut être utile de savoir de manière générale à quoi servent ces types de données :

  • binaire - sert à stocker des données telles que des images, du son ou des films.
  • booléen - permet de stocker des valeurs vraies ou fausses.
  • date - enregistre uniquement la date
  • datetime - stocke la date et l'heure dans une colonne.
  • decimal - est pour les décimales.
  • float - est pour les décimales. ( Quelle est la différence entre décimal et flottant ? )
  • integer - est pour les nombres entiers.
  • primary_key - clé unique qui peut identifier de manière unique chaque ligne d'une table
  • string - est pour les petits types de données comme un titre. ( Faut-il choisir la chaîne ou le texte ? )
  • texte - est destiné aux données textuelles plus longues, telles qu'un paragraphe d'information.
  • temps - est pour le temps seulement
  • timestamp - pour stocker la date et l'heure dans une colonne.

J'espère que cela aidera quelqu'un ! Voici également la liste officielle : http://guides.rubyonrails.org/migrations.html#supported-types

8voto

rihad Points 91

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X