2017-02-13 5 views

답변

0

키스톤의 Types.S3File 유형은 자신의 파일 이름을 결정하기 위해 사용자 정의 기능으로 설정할 수있는 filename 옵션이 있습니다. 그 값이 존재하는 경우 item.name로 설정할 수 있도록 Documentation Link

{ 
    type: Types.S3File, 
    filename: function(item, filename) { 
     // prefix file name with object id 
     return item._id + '-' + filename; 
    } 
} 

item는 현재 항목의 모든 속성이 있습니다.

+0

4.0.0-beta 5에서 작동하지 않음 – mikeso

+0

Keystone이 Keystone 4와 함께 중앙 집중식 'Types.File'유형으로 이동했습니다. [Amazon S3 스토리지 어댑터] (https://github.com/)를 사용해야합니다. keystonejs/keystone-storage-adapter-s3)을 사용하십시오. 또한 'generateFilename' 함수가 Keystone 4에서 업데이트 할 항목에 대한 참조를받지 못하는 것처럼 보입니다. [추가 읽기] (https://github.com/keystonejs/keystone/wiki/File-Fields-Upgrade-Guide) –

+0

예, s3 adpter를 사용 중이며 작동 중입니다. 하지만 다른 항목에 다른 하위 디렉토리를 갖고 싶습니다. 그것을하는 방법? s3 : { 경로 : '업로드', 헤더 : { 'x-amz-acl': '공개 읽기', }, }이 업로드/업로드, 내가 원하는/업로드/item_id/xxx – mikeso