TYPO3:没有找到模板。无法解决视图以进行操作
TYPO3: No template was found. View could not be resolved for action
我正在对 TYPO3 后端模块进行一些试验,当我在后端的左侧菜单中单击我的模块时,我试图获得一个视图。但是,当我单击此按钮时,会收到以下消息:
Sorry, the requested view was not found.
The technical reason is: No template was found. View could not be resolved for action "list" in class "MyVendor\MyModule\Controller\ConnectionController".
我在文件夹 Resources/Private/Backend/Templates/Connection 中有列表操作的视图,文件名为 List.html(大驼峰)
我使用的是 TYPO3 7.6.15 版,我用扩展构建器制作了这个模块。
如有任何帮助,我们将不胜感激。
您还可以更改模板根路径(扩展采用模板的相对路径):
前往
setup.ts
文件(或setup.txt文件;取决于个人喜好和本地配置)并添加以下行
plugin.tx_myslider.view.templateRootPath = EXT:path/to/custom/directory/
例如它可能看起来像这样:
EXT:slider/Resources/Private/Templates/myAwesomeFolder/
注意:滑块只是一个占位符。您可以简单地将其替换为您的分机名称
将您的扩展程序添加到网站节点。在您添加它之前,setup.ts 将不起作用。
此(或类似)错误的一些可能原因:
1。忘记包含 TypoScript 静态模板
查看文档:Include TypoScript from extensions
- 选择 WEB > 模板 模块(在模块菜单中)
- Select 您的起始(根)页面(在页面树中)
- Select 信息/修改(在 Docheader 中)
- 选择编辑整个模板记录
- 选择选项卡包括
- Select 您的分机在 可用项目
这将激活 Configuration/TypoScript
下的 TypoScript
2。路径错误
通过 TypoScript 设置的模板路径必须匹配文件系统中可用的模板路径。
通常默认路径为:
- Resources/Private/Templates(对于前端插件)
或
- Resources/Private/Backend/Templates(对于后端模块)
这一定是通过 TypoScript 正确设置的。例如:
Configuration/TypoScript/setup.typoscript:
# Module configuration
module.tx_myexample_web_myexamplelist {
view {
templateRootPaths.0 = EXT:myexample/Resources/Private/Backend/Templates/
...
- 模块。用于后端模块
- 如果您正在使用前端插件,请使用插件。而不是模块。
- 以 TypoScript is .typoscript since TYPO3 8 结尾的正确文件,不再是 .ts 或 .txt。对于版本 7,使用 .ts.
是正确的
3。文件名不正确
确保控制器的名称与模板目录中的子目录名称相匹配。模板文件名大写
- Controller/SomeController.php: listAction()
匹配
- Resources/Private/Backend/Templates/一些/List.html
在哪里定义 TS:
- 要么如上所述在 Configuration/TypoScript setup.typoscript 中(并通过静态包含加载)。
- 扩展根中的文件ext_typoscript_setup.typoscript可用于设置独立于页面树和模板记录的TypoScript。这将包含在所有 TypoScript 模板的设置部分中。但也要考虑 documentation 中的警告。
- 使用 ExtensionManagementUtility 中的函数直接在扩展中加载 TypoScript 或 TypoScript 文件
我正在对 TYPO3 后端模块进行一些试验,当我在后端的左侧菜单中单击我的模块时,我试图获得一个视图。但是,当我单击此按钮时,会收到以下消息:
Sorry, the requested view was not found. The technical reason is: No template was found. View could not be resolved for action "list" in class "MyVendor\MyModule\Controller\ConnectionController".
我在文件夹 Resources/Private/Backend/Templates/Connection 中有列表操作的视图,文件名为 List.html(大驼峰)
我使用的是 TYPO3 7.6.15 版,我用扩展构建器制作了这个模块。
如有任何帮助,我们将不胜感激。
您还可以更改模板根路径(扩展采用模板的相对路径):
前往
setup.ts
文件(或setup.txt文件;取决于个人喜好和本地配置)并添加以下行
plugin.tx_myslider.view.templateRootPath = EXT:path/to/custom/directory/
例如它可能看起来像这样:
EXT:slider/Resources/Private/Templates/myAwesomeFolder/
注意:滑块只是一个占位符。您可以简单地将其替换为您的分机名称
将您的扩展程序添加到网站节点。在您添加它之前,setup.ts 将不起作用。
此(或类似)错误的一些可能原因:
1。忘记包含 TypoScript 静态模板
查看文档:Include TypoScript from extensions
- 选择 WEB > 模板 模块(在模块菜单中)
- Select 您的起始(根)页面(在页面树中)
- Select 信息/修改(在 Docheader 中)
- 选择编辑整个模板记录
- 选择选项卡包括
- Select 您的分机在 可用项目
这将激活 Configuration/TypoScript
下的 TypoScript2。路径错误
通过 TypoScript 设置的模板路径必须匹配文件系统中可用的模板路径。
通常默认路径为:
- Resources/Private/Templates(对于前端插件)
或
- Resources/Private/Backend/Templates(对于后端模块)
这一定是通过 TypoScript 正确设置的。例如:
Configuration/TypoScript/setup.typoscript:
# Module configuration
module.tx_myexample_web_myexamplelist {
view {
templateRootPaths.0 = EXT:myexample/Resources/Private/Backend/Templates/
...
- 模块。用于后端模块
- 如果您正在使用前端插件,请使用插件。而不是模块。
- 以 TypoScript is .typoscript since TYPO3 8 结尾的正确文件,不再是 .ts 或 .txt。对于版本 7,使用 .ts. 是正确的
3。文件名不正确
确保控制器的名称与模板目录中的子目录名称相匹配。模板文件名大写
- Controller/SomeController.php: listAction()
匹配
- Resources/Private/Backend/Templates/一些/List.html
在哪里定义 TS:
- 要么如上所述在 Configuration/TypoScript setup.typoscript 中(并通过静态包含加载)。
- 扩展根中的文件ext_typoscript_setup.typoscript可用于设置独立于页面树和模板记录的TypoScript。这将包含在所有 TypoScript 模板的设置部分中。但也要考虑 documentation 中的警告。
- 使用 ExtensionManagementUtility 中的函数直接在扩展中加载 TypoScript 或 TypoScript 文件