私はこれらのようないくつかのコントローラを持っています: CategoryController と NewsController と同様に、カテゴリとニュースのドメイン モデルと両方のリポジトリです。
NewsController では、次のような依存性注入を行います (categoryController と同じ方法):
/**
* categoryRepository
*
* @var Tx_MyExtension_Domain_Repository_CategoryRepository
*/
protected $categoryRepository;
/**
* injectCategoryRepository
*
* @param Tx_MyExtension_Domain_Repository_CategoryRepository $CategoryRepository
* @return void
*/
public function injectCategoryRepository(Tx_MyExtension_Domain_Repository_CategoryRepository $categoryRepository) {
$this->categoryRepository = $categoryRepository;
}
私が今このような関数で試しているとき:
/**
* action getCategoriesAjax
*
* @param Tx_MyExtension_Domain_Model_News
* @return void
*/
public function getCategoriesAjaxAction() {
$categories = $this->categoryRepository->findAll();
$this->view->assign('categories',$categories);
}
空の結果が返されます。
私にとって奇妙なことは、CategoryController でこれを行っている場合、同じ関数がチャームのように機能し、データベース内のすべての要素を返すことです。さらに奇妙なことは、 $this->categoryRepository-> findByUid(1) result として正しい要素を取得します。
また、categoryRepository にテスト関数を追加しました。
public function test(){
$query = $this->createQuery();
$result = $query->execute();
$amount = $result.count();
}
この関数を categoryController から呼び出すと、正しい量の要素が返されます。これを newsController から呼び出すと、「0」が返されます...
理解できません...
何が恋しいですか??? 私の間違いはどこですか?