TYPO3: No template was found. View could not be re

2019-07-05 04:54发布

I'm experimenting a bit with TYPO3 backend modules and I'm trying to get a view when I click my module in the left menu in the backend. However when I click this I get the following message:

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".

I have the view for the list action in the folder Resources/Private/Backend/Templates/Connection and the file is called List.html (uppercamelcase)

I'm using TYPO3 version 7.6.15 and I made this module with the extension builder.

Any help would be appreciated.

4条回答
看我几分像从前
2楼-- · 2019-07-05 05:30

Add your extension to the website node. Until you add it, the setup.ts won't work.

查看更多
狗以群分
3楼-- · 2019-07-05 05:33

You can also change your template root path (the relative path from where the extension takes the tempaltes):

go to the

setup.ts

file (or setup.txt file; depends on personal preferences and local configuration) and add the following line

plugin.tx_myslider.view.templateRootPath = EXT:path/to/custom/directory/

for example it could look like this:

EXT:slider/Resources/Private/Templates/myAwesomeFolder/

NOTE: slider is just a placeholder. You can simply replace it with your extension name

查看更多
萌系小妹纸
4楼-- · 2019-07-05 05:42

I found the problem. For some reason the Extension Builder places the folders Templates, Layouts and Partials in a folder called "Backend". I moved these three folders to Resources/Private/ and now it works.

Weird thing it does that.

查看更多
冷血范
5楼-- · 2019-07-05 05:45

Some possible reasons for this (or similar) errors:

1. Forgetting to include the TypoScript static templates

  1. Choose WEB > Template module (in Module menu)
  2. Select your start (root) page (in page tree)
  3. Select Info / Modify (in Docheader)
  4. Choose Edit the whole template record
  5. Choose tab Includes
  6. Select your extension under Available Items

This will activate the TypoScript under Configuration/TypoScript

enter image description here

2. Wrong path

The Template paths set via TypoScript must match the available template paths in the filesystem.

Usually, the default path is:

  • Resources/Private/Templates (for frontend plugins)

or

  • Resources/Private/Backend/Templates (for backend modules)

This must have been set correctly via TypoScript. For example:

Configuration/TypoScript/setup.typoscript:

# Module configuration
module.tx_myexample_web_myexamplelist {
    view {
        templateRootPaths.0 = EXT:myexample/Resources/Private/Backend/Templates/
...  
  • module. is for backend modules
  • if you are working with frontend plugins, use plugin. instead of module.
  • the correct file ending for TypoScript is .typoscript since TYPO3 8 and no longer .ts or .txt. For version 7, it is correct to use .ts.

3. Use correct filenames

The name of the Controller matches the name of the subdirectory in the Templates directory. The name of the template file is capitalized.

  • Controller/SomeController.php: listAction()

matches

  • Resources/Private/BackendTemplates/Some/List.html
查看更多
登录 后发表回答