Keystone JS:使用临时字符串自动重命名S3图像上传

时间:2015-07-20 19:08:56

标签: javascript node.js amazon-s3 keystonejs

我对Keystone很陌生,因为我最近在一个使用它的项目上继承了一个代码库。我们被锁定到版本0.2.42所以我刚刚更新到最新版本0.3.12,现在我遇到了一个奇怪的问题。我们所有带有图像的模型都使用S3进行上传(Types.S3File),它只是将原始文件名的图像放在指定S3存储桶的根目录下。但是,现在,正在重命名文件,我猜测它是一个临时字符串名称。例如,如果我上传名为“MyImage.jpg”的文件,它将上传为“7830c3a6bc7b6790e63de9a3c3716b06.jpg”。我需要编辑一个新配置来保留原始文件名吗?谢谢你的帮助。

赛斯

1 个答案:

答案 0 :(得分:3)

我在Github上找到了一些帮助,所以我想我会在这里回答我自己的问题。

前一个程序员编写的“Post”Keystone列表只为图像字段定义了类型。我还添加了文件名选项:

image: {
    type: Types.S3File,
    filename: function(item, filename, originalname){
        return originalname;
    }
},

现在保留原始文件名。