【问题标题】:Remove "Edit" and "Delete from files" from SilverStripe UploadField从 SilverStripe UploadField 中删除“编辑”和“从文件中删除”
【发布时间】:2016-03-01 17:02:35
【问题描述】:

通过Silverstripe 3.2 我正在使用UploadField in a frontend form,它工作正常并且看起来不错:

但是我想从上传的文件中删除不需要的“编辑”和“从文件中删除”操作。

这是我正在使用的UploadField 初始化代码:

// upload field
$uploadField = new UploadField('File', 'Upload File');
$uploadField->setCanAttachExisting(false);
$uploadField->setCanPreviewFolder(false);
$uploadField->relationAutoSetting = false;
$uploadField->setAllowedMaxFileNumber(1);

是否有我缺少的配置选项,或者我应该只使用 CSS 来隐藏按钮?

【问题讨论】:

    标签: php silverstripe


    【解决方案1】:

    这是我过去解决类似问题的方法:

    // prevent showing preview folder
    $uploadField->setConfig('canPreviewFolder', false);
    // use a custom button-template with only the wanted buttons      
    $uploadField->setTemplateFileButtons('UploadField_FrontendButtons');
    

    模板UploadField_FrontendButtons.ss 可能如下所示:

    <button class="ss-uploadfield-item-remove ss-ui-button ui-corner-all" title="<% _t('UploadField.REMOVEINFO', 'Remove this file from here, but do not delete it from the file store') %>" data-icon="plug-disconnect-prohibition">
    <% _t('UploadField.REMOVE', 'Remove') %></button>
    

    上面的模板只是framework/templates/Includes/UploadField_FileButtons.ss的精简版

    【讨论】:

    • 仅供参考,您可以将framework/templates/Includes/UploadField_FileButtons.ss 复制到mysite/templates/UploadField_FileButtons.ssmysite 版本将覆盖framework 版本。
    • @NathanJ.Brauer 是的,但这会影响 UploadField 的所有版本,这可能不是您想要的(您希望它们在后端,而不是在前端)
    猜你喜欢
    • 2018-04-04
    • 1970-01-01
    • 2021-05-25
    • 1970-01-01
    • 2020-12-27
    • 1970-01-01
    • 1970-01-01
    • 2020-08-13
    • 1970-01-01
    相关资源
    最近更新 更多