/ / ¿T.reference: la categoría reemplaza realmente a la asociación al pertenecer? - ruby-on-rails, ruby, ruby-on-rails-4, asociaciones de modelos

¿T.reference: la categoría reemplaza realmente la asociación types_to? - ruby-on-rails, ruby, ruby-on-rails-4, asociaciones de modelos

Digamos que tengo Producto <Categoría, y un Producto belongs_to Categoría esta teniendo t.reference :category reemplazando la necesidad de la belongs_to o has_one asociación? ¿Genera automáticamente el category_id en la mesa ?

Respuestas

1 para la respuesta № 1

references es solo un alias para belongs_to. Es el mismo método. Se puede ver en el código fuente.

alias :belongs_to :references

Genera automáticamente la clave foránea principal en la tabla. No tiene relación con las declaraciones de asociación dentro de sus modelos. Todavía tienes que escribir estos exclusivamente. Lo que ambos references y belongs_to are es un acceso directo para agregar la columna de clave externa.

Tenga en cuenta que belongs_to Aquí está en el contexto de las migraciones, y no la asociación modelo. belongs_to.


0 para la respuesta № 2

Para ActiveRecord, uno es solo un alias para el otro.

references es el método original (enlace a doc), y belongs_to es un alias para references (enlace a doc)

Ten en cuenta que hay otro método. #references de ActiveRecord que hace cosas diferentes (enlace a doc)