2011-01-21 4 views
0

나는이 일부 GameItem, InventoryItem의, 재고, 사용자, Bonuse라는 이름의 모델과 Bonuses_Game_Items모델 협회, 레일에 여러 모델

사용자가 하나 개의 재고가 있습니다.
사용자가 인벤토리를 통해 많은 인벤토리 항목을 보유하고 있습니다.
게임 아이템은 Bonuses_Game_Items를 통해 많은 상여를 소유하고 있습니다.
인벤토리에는 많은 InventoryItem이 있습니다.
InventoryItem은 (inventory_id, game_item_id)와 같습니다.

간단히 말해 게임 아이템은 db에있는 아이템의 정적 표현이며, 인벤토리 아이템은 아이템과 사용자의 인벤토리의 조합입니다. 문제는 다음과 같습니다.

어떻게하면 inventory_item에서 보너스를받을 수 있습니까? 내가 사용해야하는 협회는 무엇입니까? 나는 그것을 올바르게 할 수 없다. 내가 제대로 이해하지만 비슷한 문제가 있었다으로 (이 보인다) 내가 당신을 도우려고한다면

답변

0

헤이가,

나는 확실하지 않다.

먼저 InventoryItems가 GameItems에 속하는 것을 이해합니까? 그 관계가 당신의 모델에 정의되어 있습니까?

는 경우 그래서 당신은 당신이 위의 라인을 사용할 수 있어야 모델의 관계를 정의한 경우이

@inventoryitem.game_item.bonuses 

같은 것이 여기 Rails API ActiveRecord::Associations 보라 생각합니다. 당신의 모델이 난이 도움이되기를 바랍니다

InventoryItemModel 
belongs_to => :game_items 

처럼 다소 보면입니다

. 이 컴퓨터에서 실행중인 Rails가 없으므로 테스트 할 수 없습니다.

건배

+0

yeap, 실제로 솔루션을 발견했지만 절대적으로 정확합니다. @ inventoryitem.game_item.bonuses가 올바른 사용법이고 일부는 <%= debugs %> 후에 나도 보았습니다. 어쨌든 고맙습니다 :) – Spyros