Kohana 3.0 ORM ГДЕ - И

я хочу сделать связанный запрос, используя KO3 ORM, что означает, что я хочу иметь два условия в where:

Теперь у меня есть:

   public function get_free(){
            return $this->where('static_members_only','=',self::FREE);
    }

и я хотел бы иметь:

   public function get_free(){
            return $this->where('static_members_only','=',self::FREE) AND (some other conditions)
    }

Является ли это возможным?

Спасибо!


person dana    schedule 05.05.2011    source источник


Ответы (2)


and_where() — это всего лишь прокси для where(), поэтому нет никакой разницы, что вы решите использовать. Так

ORM::factory('model')
    ->where('something','=',$something)
    ->where('something_else','LIKE',$something_else)
    ->find_all();

будет производить что-то вроде:

SELECT models.* 
FROM models 
WHERE something = '$something' 
AND something_else LIKE '$something_else'

Конечно, все vars будут экранированы/подготовлены, поэтому вам не придется беспокоиться о внедрении sql.

person Kemo    schedule 05.05.2011

Вы можете попробовать: методы Коханы where_open() и where_close()? Я думаю, что это должно быть сделано именно так.

person Arrabi    schedule 05.05.2011
comment
я не знаю об этих методах. они Кохана3? также, можете ли вы привести пример использования? Спасибо! - person dana; 05.05.2011