extbase repository findAll() liefert das Ergebnis null

Habe ich mehrere Controller Beispiel: CategoryController und NewsController
Sowie die domain-models für den Kategorie-und news und reposirtories für beide.

In der NewsController ich ein dependencyInjection (der gleichen Weise wie in 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;
}

Wenn ich versuche jetzt in einer Funktion, die so etwas wie dieses:

    /**
 * action getCategoriesAjax
 *
 * @param Tx_MyExtension_Domain_Model_News
 * @return void
 */
public function getCategoriesAjaxAction() {
    $categories = $this->categoryRepository->findAll();
    $this->view->assign('categories',$categories);
}

Bekomme ich ein leeres Ergebnis zurück.

Das merkwürdige für mich ist, dass ich, wenn ich das hier mache, im CategoryController, die gleiche Funktion funktioniert wie Charme und gibt alle Elemente in der Datenbank und noch seltsamer für mich ist, dass wenn ich ein $this->categoryRepository->findByUid(1) bekomme ich das richtige element als Ergebnis.

Habe ich auch Hinzugefügt, um meine categoryRepository eine test-Funktion:

public function test(){
  $query = $this->createQuery();
  $result = $query->execute();
  $amount = $result.count();
}

Wenn ich diese Funktion aufrufen, von categoryController, bekomme ich wieder die korrekte Menge von Elementen. Wenn ich rufe diese aus meiner newsController bekomme ich "0" zurück...

Ich verstehe es nicht...

Was vermisse ich???
Wo ist mein Fehler?

InformationsquelleAutor kapale | 2012-07-22
Schreibe einen Kommentar