Typo3 realurl 问题 - 视图未更新

Typo3 realurl issue - view not updating

我创建了一个非常简单的 typo3 扩展,只有一个模型和一个控制器。

控制器中只有这些操作:

/**
 * action list
 *
 * @return void
 */
public function listAction()
{
    $projects = $this->projectRepository->findAll();
    $this->view->assign('projects', $projects);
}

/**
 * action show
 *
 * @param \Typo3\Productoverview\Domain\Model\Project $project
 * @return void
 */
public function showAction(\Typo3\Productoverview\Domain\Model\Project $project)
{
    $this->view->assign('project', $project);
}


然后我创建了一个文件夹并添加了一个插件元素:

之后我将插件本身放在首页并包含文件夹。

使用 RealURL 配置我设法缩短了表演动作 URL:

<?php
$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl']= array (
  'local.typo3' => array (
    'init' => array (
      'enableCHashCache' => 1,
      'appendMissingSlash' => 'ifNotFile, redirect',
      'adminJumpToBackend' => 1,
      'enableUrlDecodeCache' => 1,
      'enableUrlEncodeCache' => 1,
      'emptyUrlReturnValue' => '/',
    ),
    'postVarSets' => array (
      '_DEFAULT' => array (
        'project' => array (
          array (
            'GETvar' => 'tx_productoverview_projects[action]',
          ),
          array (
            'GETvar' => 'tx_productoverview_projects[project]',
          ),
        ),
      ),
    ),

    ...


问题是什么?
如果我现在单击首页上一个列表元素的 link,它会更改浏览器栏中的 URL,但不会重定向我。我需要使用 Control + F5 刷新页面以进入项目视图或再次返回首页(即使我手动更改浏览器中的 URL)。

我正在使用 Typo3 7.6.10 和 realurl 2.0.15。


更新

如果我在 realurl_conf.php 中使用 cHash,它会正常工作:

      array (
        'GETvar' => 'cHash',
      ),

没有cHash怎么办?我的意思是 'enableCHashCache' 已激活..


更新 2

一个可能的解决方案是禁用列表操作的缓存,但我不确定这是否可行:

\TYPO3\CMS\Extbase\Utility\ExtensionUtility::configurePlugin(
'ET.' . $_EXTKEY,
'Projects',
array(
    'Project' => 'list, show',

),
// non-cacheable actions
array(
    'Project' => 'list',

)
);

已知问题 - 在 https://github.com/dmitryd/typo3-realurl/issues/244

上进行了解释

TL;DR:修复您网站上每个 link 中的 cHash 包含问题。不是配置,而是生成 link 的地方,每个地方都生成 link!