用新动作扩展扩展

时间:2018-12-18 23:37:39

标签: typo3 extbase typo3-7.6.x tx-news

我正在从6.2迁移到7.6,我在努力扩展(A)扩展另一个扩展(b)扩展新闻(A-> B-> News)。在6.2中一切正常,但在7.6中不是。

我正在从Typoscript(lib.news.nextEvent)调用我的动作

active proctype test(){

     bool one;
     byte x;

     one;
     x = x+11;
}

我有这个错误

lib.news.nextEvent < .related
nextEvent  {
    switchableControllerActions {
          News {
            1 = nextEventList
          }
    }

    settings {
        startingpoint = 123
        limit = 15

    link {
            skipControllerAndAction = 1
        }
    }
}

TypoScript \ setup.txt

Oops, an error occurred! Code: 201812181555070cca4167 - {"exception":"exception 'TYPO3\\CMS\\Extbase\\Mvc\\Exception\\NoSuchActionException' with message 'An action \"nextEventListAction\" does not exist in controller \"Roquin\\RoqNewsevent\\Controller\\EventController\"

在我的控制器中,我有(不是完整的实际课堂)

config.tx_extbase {
    objects {
        Roquin\RoqNewsevent\Controller\EventController {
            className = QcMedia\QmNewsExtended\Controller\NewsExtendedController
        }
    }
}

有人可以给我有关该错误的提示吗? 谢谢

2 个答案:

答案 0 :(得分:1)

根据使用的roq_newsevent版本,命名空间在以下情况下会有所不同:

TYPO3扩展存储库3.1.1

ROQUIN\RoqNewsevent\Controller

来自visol/ext-roq_newsevent 3.3.0的叉子:

Roquin\RoqNewsevent\Controller

这应该不是问题,但是我不确定TYPO3中的实现。

config.tx_extbase {
    objects {
        ROQUIN\RoqNewsevent\Controller\EventController {
            className = QcMedia\QmNewsExtended\Controller\NewsExtendedController
        }
    }
}

您可以尝试在ext_localconf.php中使用XCLASS而不是TypoScript config.tx_extbase.XXX

$GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects']['ROQUIN\\RoqNewsevent\\Controller\\EventController'] = [
   'className' => 'QcMedia\\QmNewsExtended\\Controller\\NewsExtendedController'
];

答案 1 :(得分:0)

除了扩展控制器类并在Typo3设置中声明扩展控制器className所做的正确操作之外,没有其他事情要做。

如果您的类名QcMedia \ QmNewsExtended \ Controller \ NewsExtendedController是正确的,并且扩展名QmNewsExtended已正确安装,则缓存可能存在问题。您是否清除了所有缓存,包括自动加载重建?