当前位置: 首页 > 知识库问答 >
问题:

类型3 Extbase调用新操作

颜畅
2023-03-14

我已经创建了自己的TYPO3扩展。此扩展名将显示文件列表。在后端,我可以创建新的类别。在这些类别中,我可以添加新文件。这很有效。但当我将下载按钮链接到新控制器操作时,它总是出现错误。

我创建了一个新的控制器(类)-

namespace Mbdownloads\MbDownloads\Controller;
class DownloadController extends \TYPO3\CMS\Extbase\Mvc\Controller\ActionController {

/**
 * action list
 *
 * @return void
 */
public function downloadAction() {
    //$files = $this->fileRepository->findAll();
     $this->view->assign("sample_var", "sample value");
    //$this->view->assign('files', $files);
}

ext\u localconf中。php我添加了以下几行:

    'Mbfilelist',
array(
    'Category' => 'list,show,test',
    'File' => 'show',
    'Download' => 'download',

然后我添加了以下文件:Resources/Private/Templates/Download/Download。html

最后,在show action模板中,我将流体下载链接添加到控制器:

<f:link.action action="download" controller="Download"><i class="fa fa-download"></i> File Download</f:link.action>

网址:

index.php?id=217&tx_mbdownloads_mbfilelist%5Baction%5D=download&tx_mbdownloads_mbfilelist%5Bcontroller%5D=Download&cHash=c1ee54cc5ccaedbeeeeef098a2029e5c

但现在我只得到:哎呀,发生了一个错误!:(

唯一有效的动作就是表演动作?!类/控制器/类别控制器/显示操作

如果我在这个控制器中添加了一个动作,例如action,我将调用这些动作,同样的错误:Oops,发生了一个错误!

谢谢你的帮助!我使用打字错误36.2。16 ...

共有1个答案

廉实
2023-03-14

您是否在flexform中添加了您的操作?

<switchableControllerActions>
    <TCEforms>
        <label>Select Options</label>
        <onChange>reload</onChange>
        <config>
            <type>select</type>
            <items>
                <numIndex index="0">
                    <numIndex index="0">...Select Item...</numIndex>
                </numIndex>
                <numIndex index="1">
                    <numIndex index="0">Download</numIndex>
                    <numIndex index="1">ControllerName->action;Download->download</numIndex>
                </numIndex>
            </items>
        </config>
    </TCEforms>
</switchableControllerActions>

添加控制器名称和操作后,还必须更新FE插件元素。

 类似资料:
  • 我有2种类型的类型类,其中一种类型包含另一种类型 我想这样称呼我的类型类: 但这行不通。 错误:(34,23)找不到参数e的隐式值:com.playground.Valides[com.playground.MyModel1,model.version.type]val v=隐式[Valides[MyModel1,model.version.type]]错误:(34,23)没有足够的隐式方法参数:

  • 我试图映射到道具的行动,但我得到一个错误:类型错误:_this2.props.updateUsername不是一个函数 如何成功地将redux操作映射到props并成功调用函数?我在任何其他stackoverflow问题/答案中都没有看到这个错误弹出,这是一个简单的错误吗?会不会是在. index或. app中对redux的设置错误? 我试过:-不使用默认导出导入-有不同格式的mapDispatc

  • 主要内容:批量操作系统,多程序操作系统,多处理操作系统,实时操作系统当前场景中存在许多类型的操作系统: 批量操作系统 在20世纪70年代,批处理非常受欢迎。 作业()分批执行。 人们习惯于拥有一台称为大型机的计算机。 在批量操作系统中,可以访问多个人; 他们将各自的工作提交给系统执行。 系统根据先到先得的原则将所有工作放入队列中,然后逐个执行工作。 用户在所有作业执行时收集各自的输出。 批处理操作系统的缺点 1. 饥饿 批处理经常遭受饥饿。 如果批次中存在五个作业

  • 一般实用的语言包括语法与标准库,毕竟写程序不能完全从零开始,须站在他人的基石之 上。而要开发更有产品价值的程序,更要站在巨人的肩膀上,比如社区提供的第三方库。 细思起来,VimL 语言的“标准库”包括两大类:内建命令与内建函数。用户在此基础上可 自定义命令与自定义函数,再合乎语法地组成起来,以达成所需的功能。第三章简要地介 绍了部分基础命令,其实那更倾向于 Vim 编辑器的功能。本章要介绍的内建函

  • 删除:可以删除任意数量的项,只需指定两个参数:删除的第一项的位置和要删除的项数。 插入:可以向指定位置插入任意数量的项,只需提供3个参数:起始位置、0(要删除的项数)和要插入的项。 替换:可以向指定位置插入任意数量的项,同时删除任意数量的项,只需指定3个参数:起始位置、要删除的项数和要插入的任意数量的项。 splice()

  • 我的目标是为CRUD操作使用一个通用类,这样我就不需要为我的应用程序中的每个域模型实现一个单独的类。 该层还在我的DTO和域模型之间进行转换。 get和delete方法工作正常。但是,如何实现save方法。对于新实体,我需要创建泛型的新实例,并将DTO映射到泛型上。 我的Service类如下所示: