Table de correspondance type Ruby et type MySQL:
Type SQL | Classe Ruby |
---|---|
int, integer | Fixnum |
decimal, numeric | Float |
interval, date | Date |
clob,blob,text | String |
float, double | Float |
char, varchar, string | String |
datetime, time | Time |
boolean | compliqué... |
Cas particulier du Boolean: le problème c'est que pour Ruby tout ce qui n'est pas nil ou la constante false est interprété comme true. Donc si la colonne contient 0 pour dire false, ruby va croire que c'est vrai...
Pour interpréter 0 comme false, il faut ajouter ? à l'attribut, exemple: user.admin?
avec admin un colonne type TINYINT.
Aucun commentaire:
Enregistrer un commentaire