Quelqu'un a-t-il une liste complète des types de modèles à spécifier lors de la génération d'un échafaudage de modèle
par exemple
foo:string
bar:text
baz:boolean
etc...
Et à quoi ces types correspondent-ils en termes d'éléments d'interface utilisateur par défaut? Champ de texte, zone de texte, bouton radio, case à cocher, etc.
ruby-on-rails
Gordon Potter
la source
la source
Réponses:
Les attributs sont des types SQL, les suivants sont donc pris en charge:
:binary
:boolean
:date
:datetime
:decimal
:float
:integer
:primary_key
:string
:text
:time
:timestamp
Ceux-ci sont documentés dans la colonne de l' API Active Record .
la source
Vous pouvez utiliser les types de champs de base suivants dans l'échafaudage de modèle, tous sont pris en charge dans les bases de données prises en charge par ActiveRecord sans aucune gemme supplémentaire (MySQL, PostgreSQL, SQLite):
:binary
:boolean
:date
:datetime
:decimal
:float
:integer
:primary_key
:string
:text
:time
:timestamp
Dans le générateur d'échafaudage, vous pouvez également déclarer les références étrangères à l'aide du
:references
type de champ, qui ajoute en outre unebelongs_to
référence dans le nouveau modèle.Si vous utilisez Rails 4 et PostgreSQL, vous pouvez en profiter:
:hstore
:array
:cidr_address
:ip_address
:mac_address
Pour le mappage de l'interface utilisateur (type de données de l'échafaudage modèle -> HTML), l'image suivante contient tous les types de champs de base :
la source
add_column :table_name, :field_name, :inet
create a column pour stocker les adresses IP. Voir par exemple. postgresqltutorial.com/postgresql-data-types