私は次のテーブルを持っています:
user
、、logbook
_user_logbook
ユーザーログブックは、外部キーを含むジャンクションテーブル(isCrossRef="true"
schema.xml内)です。user_id
logbook_id
また、特定のユーザーに対して現在選択されているログブックを記憶したかったのでcurrent_logbook_id
、user
テーブルにもを入れて、その外部キーを与えました。ただし、私のBaseUserQuery.php
ファイルには2つのfilterByLogbook()
関数があります。
同じテーブルに対して、同じテーブルから2つの外部キーがある場合、とgetUserRelatedBySomething()
のような関数を取得することは知っていますgetUserRelatedBySomethingElse()
が、この状況で行うのに最適なことは何ですか?
もちろん、外部キーを削除して保存されたIDを使用することも、新しいジャンクションテーブルを作成することもできます(正しくないようですが)。MySQLとPropelで「正しいことをする」という観点から、この状況で行うのに最適なことは何ですか(うまくいけば、両方を行うことができます!)。