2011-08-10 3 views
0

Sinatra 앱에서 업로드를 처리하기 위해 dm-paperclip을 사용하려고합니다. 그것은 정적 값으로 잘 작동합니다. 그러나 동적 보간을 사용하려고하면 업로드 된 파일이 저장되는 경로의 핵심 부분 인 dm-paperclip의 보간에서 오는 :id 변수에 쓰기시 한 값과 읽기 시간에 다른 값이 있습니다. 즉Sinatra + DataMapper 앱에서 인스턴스 ID가 dm-paperclip과 일치하지 않습니다.

, 내 모델이 있습니다

has_attached_file :attachment, 
    :url => '/system/attachments/:id/:style/:basename.:extension', 
    :path => "#{APP_ROOT}/public/system/attachments/:id/:style/:basename.:extension" 

# saves to path /my/root/public/system/attachments/217880/original/filename.png 

그것은 업로드하고 문제없이 저장합니다. 나는이에 대해 이야기 DM-클립 문서 또는 포럼에서 아무것도 찾을 수 없습니다

/my/root/public/system/attachments/218298/original/filename.png 

: 나는 @file.attachment.path을 할 때, 그것은 뭔가를 보여줍니다. 누군가 제발 도와주세요! 나는 몇 시간을 보냈다. ...

P. 나는 carrierwave-datamapper로 전환을 시도했으나 to_json으로 큰 방식으로 실패하기 때문에 작동하지 않을 것입니다. 이는 내 응용 프로그램에서 중요합니다.

답변

0

귀하의 질문에 대한 답변이 없지만 귀하가 carrierwave-datamapper로 전환하는 것이 좋습니다. 파일 업로드에 대한 더 나은 솔루션이며 유지 관리가 훨씬 더 중요합니다.

+0

안녕하세요, Solnic. 내 추기경을 봤니? 나는 또한 cw-dm에 대한 github에서 to_json 및 to_xml에 대한 문제를 제출 한 사람이기도합니다. 지금 거래 차단기입니다. 솔루션을 찾았 으면 알려주세요. – glortho

+0

아, 죄송 합니다만 나는 'P.S'를 알지 못했습니다. 어쨌든, GH 문제에 대한 의견에서 보았 듯이 반송파 자체에 문제가 있으므로 수정을 기다려야합니다. 수정이 준비되면 문제를 업데이트 할 것입니다. – solnic

관련 문제