Je voudrais savoir si il est possible d'obtenir les types (comme on le sait par l'AR - par exemple dans le script de migration et de base de données) par programmation (je sais que les données existent, quelque part).
Par exemple, je peux traiter de tous les noms d'attribut:
ar.attribute_names.each { |name| puts name }
.attributs retourne juste une cartographie des noms à leurs valeurs actuelles (par exemple, aucun type d'info si le champ n'est pas défini).
Certains des endroits que je l'ai vu avec les informations de type:
dans le script/console, tapez le nom d'un AR entité:
>> Driver
=> Driver(id: integer, name: string, created_at: datetime, updated_at: datetime)
Donc clairement, il sait les types. Aussi, il est .column_for_attribute, qui prend un attr nom et renvoie un objet de colonne dont le type enterré dans la base de données de la colonne de l'objet, mais il ne semble pas être un moyen propre à obtenir.
Je serais également intéressé si il y a un moyen qui est sympathique pour le nouveau "ActiveModel" qui est à venir (rails3) et est découplé de la base de données spécifiques (mais peut-être le type d'info ne va pas être de la partie, je n'arrive pas à savoir si c'est elle).
Merci.