Mam dość nietypowy problem.
Używam duetu sfGuardUser i sfGuardUserProfile. Chciałem użyć pluginu sfPropelActAsCommentableBehaviorPlugin podpinając go pod sfGuardUserProfile. Problemem jest to, że ów plugin używa metody $object->getPrimaryKey(), co skutecznie uniemożliwia mi implementację, bo sfGuardUserProfile identyfikator użytkownika zwraca z pola będącego kluczem obcym poprzez metodę sfGuardUserProfile::getUserId(), a sfGuardUserProfile::getPrimaryId() zwraca sfGuardUserProfile::getId(). Reasumując. Chcę podpiąć ten plugin komentarzy, ale jako identyfikatoya użyć klucza obcego sfGuardUserProfile::getUserId(). Dodam jeszcze, że nie chcę podpinać tego pluginu bezpośrednio pod sfGuardUser
1. Metoda polegałaby na przebudowie modelu sfGuardUserProfile tak, aby pole ID było jednocześnie kluczem obcym i głównym. Niestety, nie wiem jaki to może mieć wpływ na późniejsze zachowanie się innych pluginów związanych z sfGuardUserProfile.
2. Metoda polegająca na przepisaniu kodu pluginu sfPropelActAsCommentableBehaviorPlugin tak, aby możliwe było ustawienie dowolnej metody jako metody zwracającej identyfikator komentowanego obiektu.
3. Metoda - zhackowanie metody sfGuardUserProfile::getPrimaryKey() tak, aby zwracała w pewnych okolicznościach USER_ID, zamiast ID
Który pomysł najlepszy? Może jakiś inny? Może ktoś już coś takiego przechodził?
Pozdrawiam i z góry dziękuję za ewentualne odpowiedzi

--edit
Na razie przepisałem plugin dadając do niego opcje wyboru pola-klucza
