2011-08-05 6 views
0

アクションでナンバー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 
     } 
} 
+0

あなたはすべてのエラーを取得してください:fetchOne();

それとも、以下の便利な機能の一部を利用して->execute();を置き換えますか?クエリは正しい構文で日付ベースに送信されますか? – scube

答えて

1

として、あなたはどちらかのIDが供給それらを反復処理する必要があるか、あなたはDoctrine_Collection(リスト)を取得し、あなたのexecuteIndex機能で

+0

symfonyを使用しているので、なぜfind( '3')を使用しないのですか?これはプライマリキーを使用しようとし、あなたのニーズに合った1つの結果しか返しません! – Sgoettschkes

3

$this->jobeet_jobs = Doctrine::getTable('JobeetJob') ->createQuery('a') ->where('id = 3') ->fetchOne();を使用し、返しますオブジェクトの配列を実行します。

->find($yourID); // Returns ONE object 
->findByColumnnamehere($yourValue); // Returns LIST of objects 
->findOneByColumnnamehere($yourValue); // Returns ONE object 
+0

'$ yourID'が主キーであることを確認してください。 (2つのプライマリがあると仮定して) ' - > find(1,2)'や ' - > find(array(1,2))'(id = 1またはid = 2のコレクションを返します) – Flask

関連する問題