получить значение в классе действий - PullRequest
0 голосов
/ 05 августа 2011

как я могу получить номер ID в действии? например

class jobActions extends sfActions
{
      public function executeIndex(sfWebRequest $request)
      {
        $this->jobeet_jobs = Doctrine::getTable('JobeetJob')
          ->createQuery('a')
          ->where('id = 3')
          ->execute();

        echo $this->jobeet_jobs->getId(); //doesnt work
      }

      public function executeTest(sfWebRequest $request)
      {
         $this->id = $this->jobeet_jobs->getId(); /doesnt work
      }
}

Ответы [ 2 ]

3 голосов
/ 05 августа 2011

В вашей функции executeIndex вы получаете коллекцию Doctrine_Collection (список). Заменить ->execute(); на fetchOne();

Или вы используете некоторые из следующих удобных функций:

->find($yourID); // Returns ONE object
->findByColumnnamehere($yourValue); // Returns LIST of objects
->findOneByColumnnamehere($yourValue); // Returns ONE object
1 голос
/ 05 августа 2011

Поскольку execute возвращает массив объектов, вам нужно либо пройти по ним, получив идентификаторы, либо вы используете $this->jobeet_jobs = Doctrine::getTable('JobeetJob') ->createQuery('a') ->where('id = 3') ->fetchOne();

...