Php 在Yii findByPk()中对相关模型进行排序

Php 在Yii findByPk()中对相关模型进行排序,php,yii,Php,Yii,使用Yii框架,如何按“sortorder ASC,name ASC”对相关模型修饰符值进行排序?我尝试了order->('modifiervalues.sortorder ASC,modifiervalues.name ASC')但没有成功 <?php $item = Item::model() ->with("modifiergroups.modifiervalues") ->findByPk($id); ?> 试试看 或者(我实际上还没有

使用Yii框架,如何按“sortorder ASC,name ASC”对相关模型修饰符值进行排序?我尝试了
order->('modifiervalues.sortorder ASC,modifiervalues.name ASC')
但没有成功

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

试试看

或者(我实际上还没有试过这个,但应该也能用)

注:

  • 如果你只给
    一个字段,我认为你不能按另一个字段下单。您应该为
    提供关系的名称
  • 没有
    顺序
    方法

    • 谢谢您!我必须做一些修改才能让它工作,我在第一个数组键中添加了ModifierGroup,并在最后删除了额外的)$item=item::model()->with(array('modifiergroup.modifiervalue'=>array('order'=>'modifiervalue.sortorder ASC,modifiervalue.name ASC'))->findByPk($id);即使在添加基本关系后,项也没有“order”方法。我得到了上面的答案,但谢谢!
      
      $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));
      
      <?php
          $item = Item::model()
          ->with(array('modifiergroups'=>array('order'=>'modifiervalues.sortorder ASC, modifiervalues.name ASC')))
          ->findByPk($id));
      ?>