2012-02-14 4 views
0

私はYiiアプリケーションでMANY_MANY関係を保存するためにCAdvancedArBehaviorを使用しています。私はlistBoxを "multiple" = "multiple"で有効にしてIDを値として渡している関連オブジェクトを選択しています。なんらかの理由で、私のモデルを保存しようとすると、関連するオブジェクトは保存されませんが、それ以外のものはすべて保存されます。CAdvancedArBehaviorはyiicシェルでのみ動作するようです

POSTデータを印刷してすべてが通過しているかどうかを確認するためにprint_rを使用しました。オブジェクトをyiicシェルにロードして、同じ配列のMANY_MANYオブジェクトIDを追加し、適切に保存することもできます。

通常この拡張子を使用するために有効にする必要があるものはありますか?私はおそらくyiicシェルがメインアプリケーションで何らかの手動操作を必要とする拡張機能を自動的に読み込むのかどうか疑問に思っていますか?

ところで、私のフォームはCActiveFormウィジェットで作成されているので、私のフィールドはすべてオブジェクトのプロパティと完全に一致しています。

答えて

0

CActiveFormを介して関連モデルを送信する場合、フォームがフィールドとして受け入れる場合でも、$ _POST ['Model']を$ model->属性に割り当てると、関連付けられたモデルは含まれません、私はそれについて考えるとき、私は推測する)。

基本的には、この余分なラインは、関連するモデルを保存する必要がある:$モデル - の前でそれと

$model->relation_name = $_POST['Model']['relation_name']; 

>(保存)、すべてが正常に動作します。

関連する問題