2017-02-14 2 views
1

にQueryオブジェクトに参加私のクエリは、私はモデルオブジェクト内のデータを取得していますはYii2</p> <p>に参加クエリーから作成されたオブジェクトにシナリオを設定する方法Yii2

$model = Answers::find() 
      ->joinWith('question') 
      ->where(['request_id' => $Request->id])->all(); 

です。 「 - のYii \ベースの\ ErrorExceptionは非オブジェクトのプロパティを割り当てる

試みをPHPの警告」を設定する方法

を私は

$model->scenario = 'get_answer'; 

このオブジェクトにシナリオを設定しようとすると、今ではエラーを与えていますシナリオをこのオブジェクトに追加します。

+0

おそらく '回答::回答の()...->すべての()'を返す配列を見つける:

あなたのコードは次のようでなければなりません。そしてこのアクションの後、 '$ model'は配列です。 はい、配列にプロパティを割り当てることはできません。 この回答で何をしたいのかを説明してください。 –

+0

@BukharovSergeyはい私は$ model変数にオブジェクトの配列を取得しています。今私はこれらのオブジェクトにシナリオ 'get_answer'を割り当てたい –

答えて

1

Answers::find()...->all()返信arrayのAnswers。そして、このアクションの後、あなたの$ modelは配列です;

はい、配列にプロパティを割り当てることはできません。あなたはこの答えで何をしたいのかを説明してください。

$answers = Answers::find() 
     ->joinWith('question') 
     ->where(['request_id' => $Request->id])->all(); 

foreach ($answers as $answer) { 
    $answer->scenario = 'get_answer'; 
} 
関連する問題