我有以下架构:
schema "countries" do
belongs_to :lang, LanguageCode, foreign_key: :code
field :text, :string
timestamps
end
schema "languages_code" do
has_one :code, Country, foreign_key: :lang
field :text, :string
timestamps
end
我的问题是,当我要创建属于LanguageCode的第三个表时:
schema "table3" do
belongs_to :coun, CountryCode, foreign_key: :alpha2
field :text, :string
timestamps
end
如何修改languages_code架构?
答案 0 :(得分:1)
除非我弄错了,你问的是如何在LanguagesCode模型上表示belongs_to
关系?
如果是这样,那么根据语言代码是否可以包含一个或多个属于它的table3
行,您可以这样做:
schema "languages_code" do
has_one :code, Country, foreign_key: :lang
#For has_one
has_one :code, Table3ModuleName, foreign_key: :alpha2
#For has_many
has_many :code, Table3ModuleName, foreign_key: :alpha2
field :text, :string
timestamps
end
您当然会将Table3ModuleName
替换为包含table3
表架构定义的模块的实际名称。