products
en este caso).rails generate model
desde la línea de comandos.Product
con los campos name
, description
y price
ejecuta el siguiente comando:generate
ó, más corto, g
.product_order
o ProductOrder
.:
seguido del tipo de datos (sin espacios!).string
, text
, integer
, decimal
, date
, time
, datetime
, boolean
y references
.string
puedes definir la longitud con llaves al final: string{10}
string{255}
.id
(llave primaria), created_at
y updated_at
se crean de forma automática, no hay necesidad de especificarlos en el comando.Product
) en app/models/product.rb
.db/migrate
con las instrucciones para crear la tabla. A esto se le conoce como una migración.update_all
:where
se utiliza para hacer consultas complejas y retorna una colección de registros. (Por eso nos toca hacer el take
en el ejemplo anterior, take
obtiene el primer elemento de la colección.where
también puede recibir una cadena para crear consultas más complejas:where
en el orden en el que aparecen.order
para ordenar los registros por alguna columna.limit
y offset
para limitar el número de registros y saltar algunos respectivamente.Product
(capitalizado) cuando debes utilizar product
(sin capitalizar) y viceversa.product
sin capitalizar sólo lo utilizas si has creado una variable con ese nombre. Por ejemplo:product
o modificarlo utilizarías product
sin capitalizar: