доктрина 1.2.3 сервис для модели - PullRequest
0 голосов
/ 11 декабря 2010

Я использую Codeigniter с Doctrine 1.2.3, и мне интересно, можно ли использовать собственные классы обслуживания (как в java ee с hibernate). И как сделать это правильно и т.д?

Как это:

class FeedbacktypeService {
public function getFeedbacksByName($value=''){
    $q = Doctrine_Query::create()
        ->from("Feedbacktype f")
        ->where('f.name LIKE :name', array(':name' => $value));

    return $q->execute();
}}

Есть ли лучший способ сделать это? Спасибо за ваши ответы и мнения.

1 Ответ

1 голос
/ 04 июня 2011

Классы Doctrine Table предоставляют динамические искатели для всех свойств объекта. Если объект «Тип обратной связи» имеет свойство «имя», вы можете сделать:

return Doctrine::getTable('Feedbacktype')->findByName($value);

Это не похоже на сравнение, просто равенство. Он будет обрабатывать любое свойство и даже комбинации свойств AND и OR.

Документы находятся здесь: http://www.doctrine -project.org / Documentation / manual / 1_0 / en / dql-doctrine-query-language: magic-finders

...