0

設定しようとしている関係条件の正しい構文を取得するのに苦労しています。主なリレーションは外部キー question_id で設定されますが、子テーブルには user_id 列も含まれています。

ログインしたユーザーに関連するレコードのみを返したいです。これが私がこれまでに得たものです-

  class SurveyQuestion extends CActiveRecord {
 .......

   public function relations()
    {
        return array(           
            'answered_questions' => array(self::HAS_MANY, 'AnsweredQuestion', 'question_id',
                'condition'=>"answered_questions.user_id = Yii::app()->user->id'"),
        );
   }

これまでのところ機能していない構文を誰かが修正できますか? 私は長い間 Yii を扱っていないので、私の「条件」節がすべて間違っていたとしても驚かないでしょう。

どうもありがとう、

ニック

4

1 に答える 1

1

answered_questions.user_id = Yii::app()->user->id'answer_questions.user_id が実際のユーザー ID ではなく、文字列 'Yii:: .....' と等しいかどうかをチェックします。引用符を終了し、PHP コマンドとして追加する必要があります。

'condition'=>"answered_questions.user_id = ".Yii::app()->user->id),

これがあなたの質問だけのタイプミスでない限り?

于 2012-11-03T17:00:53.723 に答える