1

Yiiフレームワークを使用して、関連するモデル修飾子の値を「sortorder ASC、nameASC」で並べ替えるにはどうすればよいですか?私はorder->('modifiervalues.sortorder ASC, modifiervalues.name ASC')無駄にしようとしました

<?php
    $item = Item::model()
    ->with("modifiergroups.modifiervalues")
    ->findByPk($id);
?>
4

2 に答える 2

3

試す

$item = Item::model()
        ->with('modifiergroups')
        ->find(array(
                'condition'=>'id = :id',
                'params'=>array('id'=>$id),
                'order'=>'modifiervalues.sortorder ASC, modifiervalues.name ASC'
              )
         );

または(実際にこれを試したことはありませんが、まったく同じように機能するはずです)

$item = Item::model()
        ->with(array('modifiergroups'=>array('order'=>'modifiervalues.sortorder ASC, modifiervalues.name ASC')))
        ->findByPk($id));

ノート:

  • 分野のみを指定withすると、別の分野で注文することはできないと思います。with関係の名前を指定する必要があります。
  • CActiveRecordorderにはメソッドがありません
于 2012-06-12T03:32:18.717 に答える
0
<?php
    $item = Item::model()
    ->with(array('modifiergroups'=>array('order'=>'modifiervalues.sortorder ASC, modifiervalues.name ASC')))
    ->findByPk($id));
?>

ベースリレーション名も順番に追加する必要があります。これを試して。

于 2012-06-12T10:51:25.940 に答える