홈>
사진에 클립을 사용하는 항목 (샘플 데이터가 아닌 실제 시드 데이터)에 대한 많은 시드 데이터가 있습니다. 우리는 클립과 함께 S3를 사용하도록 설정되었습니다. 일반적으로 제안 된 방법 을 시드에로드하는 것은 이미 매우 느리게 진행되고 있습니다. 더 많은 항목을 추가하십시오. 씨앗은 이미 실행하는 데 약 5 분이 걸리므로이 작업 후 1 ~ 2 시간이 걸리므로 표준 git 브랜칭 스타일 워크 플로가 실제로 비실용적입니다. 우리는 개발 모드에서 S3를 돌릴 수 있지만 오히려
development
를 유지합니다.
production
에 가까운 환경
가능하다면
매번 업로드 과정을 거치지 않고 S3 링크를 재사용 할 수있는 방법이 있는지 확인하기 위해 클립 문서를 살펴 보았지만 아무것도 찾지 못했습니다. 이 문제를 해결할 수있는 클립 "표준"또는 친숙한 방법이 있습니까? Paperclip/S3를 사용하여 대량의 시드 파일을 어떻게 해결 했습니까?
감사합니다!
-
답변 # 1
실수하지 않으면 Paper Clip은 이미지의 파일 이름을 데이터베이스의 열에 저장합니다. 이 경우 "일반적으로 제안 된 방법"을 사용하여 데이터베이스를 한 번 시드 할 수 있습니다. Paper Clip이 데이터베이스를 시드하고 S3에 데이터를 업로드 한 후 파일 이름, 파일 크기 및 기타 파일 메타 데이터에 대해 데이터베이스를 쿼리 할 수 있습니다.
그런 다음 데이터베이스의 기존 데이터를 사용하여 새 시드 파일을 생성하여 레코드 값을 직접 할당 할 수 있습니다 (예 : 클립을 활용하지 않음)
Paperclip으로 처리하지 않고 새 레코드를 만들려면이 예를 따르는 것이 좋습니다. 모델에 다음을 추가하십시오.
다음과 같은 방법으로이 두 번째 시드 파일을 자동으로 생성 할 수도 있습니다 :
테스트하지는 않았지만 제대로 작동합니다.