我有兩個型號: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