私はちょうど同様の問題を抱えていました。同じ外部テーブルに複数の外部キーがあるかどうかについての質問には触れていませんが、それが問題だと思います。
私が持っていた:
<foreign-key foreignTable="dish" phpName="Dish" refPhpName="Menu">
<reference local="soup_id" foreign="id"/>
</foreign-key>
<foreign-key foreignTable="dish" phpName="Dish" refPhpName="Menu">
<reference local="main_id" foreign="id"/>
</foreign-key>
そして私はこのエラーメッセージを持っています:
PHPの致命的なエラー:BaseMenuQuery :: filterByDish()を再宣言できません
次に、phpName属性とrefPhpName属性を変更しました(Propelは外部テーブルクラスでfilterBySomething()関数を生成するため、後者が必要です。私の場合、複数のfilterByMenu()関数名がありました)。
<foreign-key foreignTable="dish" phpName="soupDish" refPhpName="sMenu">
<reference local="soup_id" foreign="id"/>
</foreign-key>
<foreign-key foreignTable="dish" phpName="mainDish" refPhpName="mMenu">
<reference local="main_id" foreign="id"/>
</foreign-key>
したがって、複数の外部キーによるHrlibQualificationテーブルへの複数の参照があると思います。
それがお役に立てば幸いです。