Liste der Schienenmodelltypen

112

Hat jemand eine vollständige Liste der Modelltypen, die beim Generieren eines Modellgerüsts angegeben werden?

z.B

foo:string 
bar:text 
baz:boolean

etc...

Und worauf werden diese Typen in Bezug auf Standard-UI-Elemente abgebildet? Textfeld, Textbereich, Optionsfeld, Kontrollkästchen usw.

Gordon Potter
quelle

Antworten:

249

Die Attribute sind SQL-Typen, daher werden die folgenden unterstützt:

  • :binary
  • :boolean
  • :date
  • :datetime
  • :decimal
  • :float
  • :integer
  • :primary_key
  • :string
  • :text
  • :time
  • :timestamp

Diese sind in der Active Record API unter der Spalte dokumentiert .

Bayard Randel
quelle
2
Ihr Link ging Tweets hoch (ich denke, das ist der Satz). Wenn Sie auf eine authentische Dokumentation verlinken können, wäre das ein Tweet, ich meine süß. Vielen Dank.
3
Ich denke, dies könnte ein genauerer Link sein, jetzt api.rubyonrails.org/classes/ActiveRecord/ConnectionAdapters/…
Randy Burgess
1
Wo passt: Referenzen dazu? Ist es datenbankspezifisch?
Erhannis
Ich möchte für diejenigen, die in Zukunft lesen, hinzufügen, dass beim Erstellen einer Migration usw. Auto: Referenzen sehr praktisch sind, um einen car_id-Fremdschlüssel zu erstellen.
BKSpurgeon
1
und jetzt ist es hier: api.rubyonrails.org/classes/ActiveRecord/ConnectionAdapters/… - ich habe die Antwort aktualisiert
John Bachir
47

Sie können die folgenden grundlegenden Feldtypen in Modellgerüsten verwenden. Alle werden in ActiveRecord-unterstützten Datenbanken ohne zusätzliche Juwelen (MySQL, PostgreSQL, SQLite) unterstützt:

  • :binary
  • :boolean
  • :date
  • :datetime
  • :decimal
  • :float
  • :integer
  • :primary_key
  • :string
  • :text
  • :time
  • :timestamp

Im Gerüstgenerator können Sie die Fremdreferenzen auch mit dem Feldtyp deklarieren :references, wodurch zusätzlich eine belongs_toReferenz in das neue Modell eingefügt wird.

Wenn Sie Rails 4 und PostgreSQL verwenden, können Sie folgende Vorteile nutzen:

  • :hstore
  • :array
  • :cidr_address
  • :ip_address
  • :mac_address

Für die UI-Zuordnung (Modellgerüstdatentyp -> HTML) enthält das nächste Bild alle grundlegenden Feldtypen:

Rails-Datentypen, Gerüst-HTML-Mapping

Edu Lomeli
quelle
Rails 5 unter PostgreSQL: Sie können add_column :table_name, :field_name, :ineteine Spalte zum Speichern von IP-Adressen erstellen. Siehe z. postgresqltutorial.com/postgresql-data-types
MSC