Я предполагаю, что пистолет 1 и пистолет 2 - это имена, а не уникальный идентификатор.В этом случае
Клуб has_many пользователей Пользователь has_many guns Gun has_many bullets
Клуб: Мо, Ларри, Кудрявый
Пушка: 1 (Мо), 2 (Мо),3 (Ларри), 4 (Кудрявый), 5 (Кудрявый)
Мое: 2 пушки (пистолет) 1 имеет 100 пуль (пистолет) 2 имеет 20 пуль
Ларри: 1 пистолет (пистолет) 3 имеет 40 пуль
Кудрявый: 2 пистолета (пистолет) 4 имеет 20 пуль (пистолет) 5 имеет 10 пуль
В этом случае я бы добавил идентификатор клуба также на стол оружия,с помощью которого мы можем напрямую получить количество пуль в клубе ...
Или альтернативное решение - использовать counter_cache ...
Надеюсь, это поможет
rgds,
Каннан Р