yii:model

Model

Создать компонент от CActiveRecord и наследловаться от созданного
  public $_limit = 10;
  public $_offset = 0;
  public $_order = '';
  // AR Limit, Offset
  public function limit($limit = 0, $offset = 0)
  {
 
    $this->_limit = (int)Yii::app()->request->getParam('limit');
    $this->_offset = (int)Yii::app()->request->getParam('offset');    
 
    $this->getDbCriteria()->mergeWith(
      array(
        'limit' => $limit ? $limit : $this->_limit,
        'offset' => $offset ? $offset : $this->_offset,
        )
    );
    return $this;
  }
 
  // AR Group
  public function group($group = array())
  {
    if(is_array($group)) $_group = $group;
    else $_group[] = $group;
    $this->getDbCriteria()->mergeWith(
      array(
        'group' => implode(',', $_group),
      )
    );
    return $this;
  }
 
  // AR Order by
  public function order($order = '', $desc = false)
  {
    $this->_order = (string)Yii::app()->request->getParam('order');
    if($order == '') $order = $this->_order;
    if(!$order) return $this;
    $this->getDbCriteria()->mergeWith(
      array(
        'order' => $order . ($desc? ' DESC': ' ASC'),
        )
    );
    return $this;
  }
  • yii/model.txt
  • Последнее изменение: 2012/11/26 16:07
  • (внешнее изменение)