Adding a Model Reference to existing Rails model

后端 未结 3 1844
情深已故
情深已故 2021-02-01 04:15

I\'d like to know the \"proper\" way to approach adding a relation between two existing classes in Rails 3.

Given existing models: Clown & Rabbit

I\

3条回答
  •  半阙折子戏
    2021-02-01 04:42

    I'm not sure where you got this idea, but there is no (and never has been) such syntax to do what you want with add_column. To get the behavior you want, you'd have to do t.refences :clown, as you stated. In the background this will call: @base.add_column(@table_name, "#{col}_id", :integer, options).

    See here.

    EDIT:

    I think I can see the source of your confusion. You saw the method call t.reference and assumed it was a datatype because calls such as t.integer and t.string exist, and those are datatypes. That's wrong. Reference isn't a datatype, it's just simply the name of a method, similar to t.rename is.

提交回复
热议问题