簡體   English   中英

Rails外鍵問題

[英]rails foreign key problem

我是Rails框架的新手。 我已經創建了表格:

DealerGroups                         Dealer 
------------                         ------------
Id:integer(primary key)              Id:integer(primary key)
name:string                          dealer_group_id:integer(foreign key)

但是,當我嘗試設置Dealer.dealer_group_id = value (此值存在於DealerGroups表中)時,出現“ UninitializedConstant Dealer :: DealerGroup”異常。

在模型中,我有:

class Dealer < ActiveRecord::Base
  belongs_to :dealer_buying_group, :foreign_key => "dealer_buying_group"
end

class DealersGroup < ActiveRecord::Base
  has_many :dealer
end

如果刪除has_manybelongs_to關系,則一切正常。

為什么對這種關系不起作用?

注意“ s”(為什么您的“ Dealer”表不是“ Dealers”?)您不需要在Rails中手動設置外鍵,在生成支架時只需為其定義Model_ID字段即可。 / model / controller,然后模型中的belongs_tohas_many將為您建立關系

數據庫:

DealerGroups                         Dealers 
------------                         ------------
Id:integer(primary key)              Id:integer(primary key)
name:string                          dealergroup_id:integer

型號

class Dealer < ActiveRecord::Base
  belongs_to :dealergroup
end

class DealersGroup < ActiveRecord::Base
  has_many :dealers
end

要從經銷商處訪問交易者組的名稱,只需使用

controller: 
@dealer = Dealer.find_by_id(myInt)

view:
<%= @dealer.dealergroup.name %>

您有DealersGroup類,而您正在尋找dealer_group_id

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM