Refactoring. Fix errors. Add SqlModel.assoc*() methods.

This commit is contained in:
Alexander Demidov
2013-09-17 18:42:04 +04:00
parent 732b1ca8a5
commit 2cb56ad228
2 changed files with 128 additions and 23 deletions

View File

@ -2,7 +2,7 @@
class SqlCriteria
{
public $select = array('*');
public $select = '*';
public $distinct = '';
@ -31,19 +31,15 @@ class SqlCriteria
}
/**
* @param $fields array()
* @param array $fields_to_desc
* @param $fields array @ex array('field1', 'field2' => SqlModel::ORDER_DESC)
* @return SqlCriteria
*/
public function order($fields, $fields_to_desc = array())
public function order($fields)
{
if (!is_array($fields)) {
$fields = array($fields);
}
foreach ($fields as $term) {
$term = $this->db->quoteIdentifier($term) . (in_array($term, $fields_to_desc) ? ' DESC' : '');
}
$this->order = implode(',', $fields);
$this->order = $fields;
return $this;
}
@ -70,7 +66,7 @@ class SqlCriteria
if (!is_array($select)) {
$select = array($select);
}
$this->select = implode(',', $select);
$this->select = $select;
return $this;
}