我正在写一个关于钓鱼的应用程序。
- 我们有一个
fish包含一些物种的模型。 - 我们有一个
location包含钓鱼点的模型。 - 我们有一个
technique模型,其中包含一些钓鱼技术。 
每个location可能有多个fish,所以:  
class Location < ActiveRecord::Base
    has_many :fish
end
每个fish都可以在多个位置找到,因此:
class Fish < ActiveRecord::Base
    has_many :locations
end
令人头疼的是第三种模型,因为每个模型都fish可以被多个techniques依赖于location. 换句话说: 和 之间存在类似多对多的关系fish,technique每个location.
我应该使用什么样的关联?