2017-02-20 7 views
0

내 Rails 앱에서 Article 모델을 편집 할 수 있도록 CKEditor를 설정하고 모든 이미지를 Paperclip을 통해 AWS S3에 업로드합니다. 업로드가 성공적입니다.Rails + CKEditor + Paperclip + AWS S3를 사용하여 다른 폴더에 파일 업로드

그러나 업로드 된 모든 이미지는 폴더로 분리되지 않습니다. 이것은 내 애플 리케이션 결국 결국 많은 기사가 문제가 발생할 것입니다.

예를 들어, 기사 중 하나에서 그림을 편집하려면 사용자는 경합 조항에 속하지 않은 그림을 포함하여 전체 그림 목록을 스크롤해야 올바른 그림을 찾을 수 있습니다 .

의 네임 각 articletitle 또는 id에 따라, 조직적인 방식으로 이미지를 업로드 같은 수있는 방법이 있습니까?

미리 감사드립니다.

답변

0

당신은 my_bucket_name/개발/이미지/1/축소/my_thumbnail.jpg에게있을 것입니다 당신이 버킷 이름과 버킷의 경로를 전달할 수 있습니다 이렇게 ...

has_attached_file :picture, 
    :storage => :s3, 
    :bucket => 'your_bucket', 
    :path => "#{Rails.env}/:attachment/:id/:style/:filename.:extension" 

뭔가를 시도 할 수 있습니다

난 당신이 또한 메서드 또는 블록 호출 할 수 있다고 생각 동적으로 삼았 folder..something의 이름을 처리 할 버킷을

... 
:bucket => get_folders, 
... 
... 

###somewhere in model.rb 
def get_folders 
if self.type = 'Admin' 
    "admin" 
else 
    "user" 
end 
@picture = Picture.find(params[:id]) 
###url of the picture 
url = @picture.my_attachment_name.url 
##considering above scenario,where picture is attachment name 
url = @picture.picture.url 

이 시도 제공 할 수 있습니다 -당신은 액세스는 다른 모델 객체를 좋아 할 수 있습니다.

희망이 있습니다.

+0

Milind 안녕하세요, 어떻게 ckeditor 창에서이 액세스 할 수 있습니까? – Vic

+0

당신은 @ picture.attachment.url처럼 그것을 액세스 할 수 있습니다. 내 업데이트 된 답변보기 ... – Milind