Czy ktoś ma pełną listę typów modeli, które są określone podczas generowania szkieletu modelu
na przykład
foo:string
bar:text
baz:boolean
itp...
A na co te typy są mapowane pod względem domyślnych elementów interfejsu użytkownika? Pole tekstowe, obszar tekstowy, przycisk opcji, pole wyboru itp.
ruby-on-rails
Gordon Potter
źródło
źródło
Odpowiedzi:
Atrybuty są typami SQL, dlatego obsługiwane są:
:binary
:boolean
:date
:datetime
:decimal
:float
:integer
:primary_key
:string
:text
:time
:timestamp
Są one udokumentowane w kolumnie w Active Record API .
źródło
Możesz użyć następujących podstawowych typów pól w szkieletowaniu modelu, wszystkie są obsługiwane w bazach danych obsługiwanych przez ActiveRecord bez dodatkowego klejnotu (MySQL, PostgreSQL, SQLite):
:binary
:boolean
:date
:datetime
:decimal
:float
:integer
:primary_key
:string
:text
:time
:timestamp
W generatorze rusztowań można również zadeklarować referencje zagraniczne przy użyciu
:references
typu pola, co dodatkowo dodajebelongs_to
referencję w nowym modelu.Jeśli używasz Rails 4 i PostgreSQL, możesz skorzystać z tych możliwości:
:hstore
:array
:cidr_address
:ip_address
:mac_address
W przypadku mapowania interfejsu użytkownika (typ danych modelu szkieletu -> HTML) następny obraz zawiera wszystkie podstawowe typy pól:
źródło
add_column :table_name, :field_name, :inet
tworzenia kolumny do przechowywania adresów IP. Zobacz np. postgresqltutorial.com/postgresql-data-types