我有两个型号:University
和Market
的has_many belongs_to的ASSOCATION问题
大学属于一个市场,并且市场可以有很多的大学。例如,市场像波士顿的一个实例,可能有像麻省理工学院,哈佛大学,波士顿大学等
我希望能够做这样的事情在控制台大学实例:
University.first.market.name
但我得到以下错误:
NoMethodError: undefined method `market' for #
我可以从University.first.market_id
得到市场的ID,但我无法从market.name
得到名字。
这里是我如何我的模型建立:
class University < ApplicationRecord
belongs_to :markets
class Market < ApplicationRecord
has_many :universities
end
这里是我的架构 - 我觉得跟market_id整数列和索引的正确实施
create_table "universities", force: :cascade do |t|
t.string "name"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.string "full_name"
t.integer "market_id"
t.index ["market_id"], name: "index_universities_on_market_id"
end
这里是我的(?)市场架构:
create_table "markets", force: :cascade do |t|
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.string "name"
end
我在做什么不正确?
你也可以写你的迁移为t。 belongs_to:市场而不是t.integer“market_id” – s1mpl3