'order by' in MANY_MANY Relation

Hallo!

Wie kann ich bei einer MANY_MANY Relation die Sortierung der abhängigen Daten beeinflussen?

Mein Model ‘Page’ hat folgende Relations:


public function relations()     {         

    return array(

        'button_template' => array(self::BELONGS_TO, 'ButtonTemplate', 'button_template_id'),

        'buttons' => array(self::MANY_MANY, 'CustomButton', 'core_btn_page_relation(page_key,custom_button_key)'),

        'buttonCount' => array(self::STAT, 'CustomButton', 'core_btn_page_relation(page_key,custom_button_key)')

);

Es geht hierbei um die ‘buttons’ Relation - die beim Laden des ‘Page’-Models gelieferten ‘Buttons’ sollen nach der Spalte ‘shown_name’ sortiert geliefert werden.

Wie kann ich dies realisieren?

Vielen Dank!


public function relations()     {         

    return array(

        'button_template' => array(self::BELONGS_TO, 'ButtonTemplate', 'button_template_id'),

        'buttons' => array(self::MANY_MANY, 'CustomButton', 'core_btn_page_relation(page_key,custom_button_key)', array('order' => 'shown_name')),

        'buttonCount' => array(self::STAT, 'CustomButton', 'core_btn_page_relation(page_key,custom_button_key)')

);

Danke erstmal, für die Antwort.

Leider erhalte ich folgende Meldung:

CException

Beschreibung

Eigenschaft "CManyManyRelation.0 ist nicht definiert.

Quelldatei

/var/www/yii/framework/db/ar/CActiveRecord.php(1693)

Habe auch bereits versucht, den Tabellennamen bei ‘order’ mit anzugeben bzw. nach anderen Spalten sortieren zu lassen - der Fehler bleibt bestehen.

Was nun?

Ah, hat sich schon erledigt.

Korrekt muss es lauten:


'buttons' => array(self::MANY_MANY, 'CustomButton', 'core_btn_page_relation(page_key,custom_button_key)', 'order' => 'shown_name'),

Vielen Dank nochmal für den Hinweis!