TYPO3 V11: "PHP警告:未定義的陣列鍵",$this->request->getArguments()為空
P粉807471604
P粉807471604 2023-11-12 21:35:09
0
1
1003

我是typo3的新用戶,我製作了一個外掛程式來顯示用戶,並使用搜尋列來過濾他們,但是當我想顯示我的頁面時出現此錯誤:

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

在我的控制器中,我嘗試獲取參數以在我的過濾器中使用它,如下所示:

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

somecode ...

}

我嘗試轉儲 $arguments,但它是空的

我的儲存庫中有一部分:

/**
     * @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
        ]);

有人知道為什麼我無法得到參數嗎?謝謝

如果您需要更多部分程式碼,請告訴我

P粉807471604
P粉807471604

全部回覆(1)
P粉817354783

如果您只是呼叫 List 動作而不傳送篩選器表單,則參數為空。

您應該在存取每個預期參數之前對其進行測試,如下所示:

if($this->request->hasArgument('word')) {
        $searchOption = $this->request->getArgument('word'));
}
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板