【发布时间】:2016-08-09 05:08:46
【问题描述】:
我已扩展 CMS 设置以上传两个 CSS 文件。 SiteConfig 扩展代码的一部分 -
<?php
//OTHER CODES HERE
$fields->addFieldToTab('Root.Main', $cssfile = UploadField::create(
'StyleSheet',
'Style Sheet'
));
$fields->addFieldToTab('Root.Main', $clientcssfile = UploadField::create(
'ClientStyleSheet',
'Client Style Sheet'
));
//OTHER CODES HERE
?>
我已经扩展了File 类
class FileRenameExtension extends DataExtension {
function onAfterUpload() {
$file = $this->owner;
$file->Name = 'CustomStyle.'.$file->getExtension();
$file->write();
}
}
问题
- 代码重命名了从所有字段上传的文件,但我只想重命名从
ClientStyleSheet上传的文件。 - 在重命名文件之前,如果用户上传的文件名称已经存在,它会发出警告,如果我点击
Overwrite,它会覆盖文件并重命名文件。我只想不管文件名是什么,它只是用File Extension Class中指定的名称保存文件 - 在文件上传之前重命名文件的正确方法是什么?
【问题讨论】:
标签: silverstripe