2016-11-02 15 views
0

PDF 형식의 CV를 구문 분석하는 기능을 구축 중입니다. 나는 파싱을 처리하는 before_save라는 메서드를 가지고있다. 나는 ...S3 버킷에 업로드하기 전에 paperclip 및 pdf-reader를 사용하여 PDF를 구문 분석하려면 어떻게해야합니까?

file = cv.queued_for_write[:original]

이 사용하는 저장하기 전에,이 방법 내에서 PDF 파일에 액세스 할 수 있어요하지만 내가 PDF로 파일을 전달해야 :: 리더는, 그러나, 그것은 PDF- 것 같아 판독기는 실제 파일 자체가 아닌 파일에 대한 경로 또는 URL 만 허용합니다.

ArgumentError (input must be an IO-like object or a filename):

가 나는 TMP 폴더 또는 무언가에 파일을 저장 한 다음 PDF 리더의 경로를 통과해야합니까 :이 방법 ...

reader = PDF::Reader.new(file)

이 오류가 발생합니다 그것을 파싱하려면? PDF를 가능한 한 빨리 파싱하기를 바라고있어 이상적인 것처럼 보이지 않습니다. 어떤 조언을 부탁드립니다!

답변

1

"queued_for_write"개체에 경로 속성이 있다는 것을 알았습니다.

file = cv.queued_for_write[:original]

그래서 난 그냥 이런 식으로 액세스 할 수 있습니다

reader = PDF::Reader.new(file.path)