2009-11-18 5 views
2

업로드 첨부 파일을 업로드 할 수있는 Basecamp API와 같은 업로드 컨트롤러를 구현하는 방법을 궁금해하고 해당 사진의 ID가 포함 된 XML 응답을받은 다음이를 사용하여 XML 레코드를 첨부 파일에 첨부하기위한 후속 XML 포스트 ...Basecamp와 같은 업로드 컨트롤러 구현

답변

0

기본적으로 Paperclip 또는 Attachment_fu과 같은 업로드 된 파일을 관리하는 플러그인 만 있으면됩니다. 이러한 플러그인을 사용하면 데이터베이스 레코드와 마찬가지로 파일과 상호 작용할 수 있으므로 각 파일에 ID가 첨부됩니다.

그런 다음 컨트롤러의 respond_to 블록에 xml 선언이 있는지 확인하십시오.

respond_to do |format| 
    format.html 
    format.xml { #return the id for the file } 
end 
0

어디서나이 작업을 수행 할 수있는 문서가 없습니다. 결국 Basecamp 웹 사이트의 파일 첨부 프로세스가 API 사용자를 위해 어떻게 작동하는지 설명하는 문서를 우연히 발견하고이를 지침으로 사용했습니다. 게시 된 파일에 대한이 문서의 도움으로

http://developer.37signals.com/basecamp/

가 : 오히려 XML에 태그를 전달하는 대신, 그들은 먼저 파일을 게시하도록 http://www.codevil.com/index.php/2009/05/23/posting-and-getting-files-in-rubyrails/

내가 내 초기 설정을 수정 응답으로 파일 ID를 수신하십시오.

그런 다음 해당 참조와 해당 XML을 게시합니다.

그런 다음 before_validation 및 after_save 콜백을 사용하여 파일을 Paperclip으로 설정하고 저장 후 tmp 파일을 제거합니다.

관련 문제