[英]How to load DB-Table-Data from an Extension into the Backend-Records in Typo3 6.2
屏幕快照上的記錄位於三個不同的頁面(31,10,11)。 您僅在“記錄存儲頁面”-字段中選擇了一個。 僅當您將存儲庫設置為已刪除,隱藏或擴展(開始;停止)條目時,才會顯示該條目。
擴展構建器的默認行為不使用記錄存儲頁面字段。 要使用一個特定頁面,請設置存儲pid的常量:
plugin.tx_myext.persistence.storagePid = 10
與擴展名中的所有條目相比,存儲在帶有uid 31的頁面中並從該頁面顯示。
查看phpMyAdmin屏幕快照,基本問題似乎是現有記錄位於不同的頁面上。 默認情況下,僅顯示所選頁面/文件夾中的記錄(示例中的UID 10)。 其他記錄在第31和11頁上。
如果您將Extbase用於前端插件,則可以調整查詢設置以忽略存儲頁面(pid)並顯示Repository類中的所有記錄:
namespace MyVendor\MyExtKey\Domain\Repository;
class ExampleRepository extends \TYPO3\CMS\Extbase\Persistence\Repository {
// Repository wide settings
public function initializeObject() {
$querySettings = $this->objectManager->get(\TYPO3\CMS\Extbase\Persistence\Generic\Typo3QuerySettings::class);
$querySettings->setRespectStoragePage(FALSE);
$this->setDefaultQuerySettings($querySettings);
}
// Example for adjusting a single query
public function findEverything() {
$query = $this->createQuery();
$query->getQuerySettings()->setRespectStoragePage(FALSE);
return $query->execute();
}
}
如果在前端創建記錄,則需要注意刷新列表視圖的頁面緩存(或在第一次嘗試時使其不緩存),以便顯示新條目。 否則,將顯示已緩存的頁面,該頁面將在幾個小時內不包含最新條目(取決於您的緩存設置)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.