Rumah  >  Soal Jawab  >  teks badan

TYPO3 V11: "Amaran PHP: kunci tatasusunan tidak ditentukan", $this->request->getArguments() kosong

Saya pengguna baharu typo3, saya membuat pemalam untuk menunjukkan pengguna dan menggunakan bar carian untuk menapis mereka, tetapi apabila saya ingin menunjukkan halaman saya, saya mendapat ralat ini:

(1/1) #1476107295 TYPO3CMSCoreErrorException
PHP Warning: Undefined array key "word" in MyPath/Controller/UserlistController.php line 44

Dalam pengawal saya, saya cuba mendapatkan parameter untuk menggunakannya dalam penapis saya seperti ini:

public function listAction(int $currentPage = 1)
{
   $arguments = $this->request->getArguments();
   $users = $this->userlistRepository->findBySearch($arguments['word'] ? $arguments['word'] : '');

somecode ...

}

Saya cuba membuang $argumen tetapi ia kosong

Sebahagian daripada repositori saya:

/**
     * @param string $word
     * @return object[]|TYPO3CMSExtbasePersistenceQueryResultInterface
     * @throws TYPO3CMSExtbasePersistenceExceptionInvalidQueryException
     */
    public function findBySearch(string $word) {
        $query = $this->persistenceManager->createQueryForType(TYPO3CMSExtbaseDomainModelFrontendUser::class);
        $querySettings = $query->getQuerySettings();
        $querySettings->setStoragePageIds([26]);
        $query->setQuerySettings($querySettings);

        $query->setOrderings([
            'lastName' => QueryInterface::ORDER_ASCENDING
        ]);

Adakah sesiapa tahu mengapa saya tidak boleh mendapatkan parameter? Terima kasih

Jika anda memerlukan lebih banyak bahagian kod, sila beritahu saya

P粉807471604P粉807471604311 hari yang lalu870

membalas semua(1)saya akan balas

  • P粉817354783

    P粉8173547832023-11-13 18:55:40

    Jika anda hanya memanggil operasi Senarai tanpa menghantar borang penapis, parameter akan kosong.

    Anda harus menguji setiap parameter yang dijangkakan sebelum mengaksesnya, seperti ini:

    if($this->request->hasArgument('word')) {
            $searchOption = $this->request->getArgument('word'));
    }

    balas
    0
  • Batalbalas