2013-04-20 3 views
0

rake db : migrate를 실행할 때 uninitialized constant WickedPdf 오류가 발생합니다.rake db : migrate - 초기화되지 않은 상수 WickedPdf

WickedPdf를 설치하는 방법에 대해서는 https://github.com/mileszs/wicked_pdf/issues/53 페이지에 나와있는 안내를 따라 왔습니다.

나는 명령 줄에서 wkhtmltopdf 바이너리를 실행할 수 있습니다 내 wicked_pdf.rb은 다음과 같습니다 여기

WickedPdf.config = { 
    :exe_path => '/usr/local/bin/wkhtmltopdf' 
} 

는 참조 용으로 내 보석의 목록입니다

$ bundle exec gem list 

*** LOCAL GEMS *** 

actionmailer (2.3.14) 
actionpack (2.3.14) 
activerecord (2.3.14) 
activeresource (2.3.14) 
activesupport (2.3.14) 
brightbox (2.3.9) 
bundler (1.3.5) 
capistrano (2.14.2) 
highline (1.6.16) 
hoe (3.5.2) 
hpricot (0.8.2) 
htmldoc (0.2.3) 
json (1.7.7) 
macaddr (1.6.1) 
mysql (2.9.1) 
net-scp (1.1.0) 
net-sftp (2.1.1) 
net-ssh (2.6.7) 
net-ssh-gateway (1.2.0) 
paginator (1.1.1) 
rack (1.1.6) 
rails (2.3.14) 
rake (10.0.4) 
rdoc (4.0.1) 
RedCloth (4.2.9) 
rmagick (2.13.1) 
systemu (2.5.2) 
uuid (2.0.2) 
will_paginate (2.3.16) 
wkhtmltopdf-binary (0.9.9.1) 

감사를

+0

이전 중에 PDF를 만들려고하십니까? 해당 마이그레이션 파일에 'wicked_pdf 필요'를 추가 했습니까? –

+0

@JesseWolgamott 내가 아는 한, 내 앱이 아니기 때문에 확신 할 수 없습니다. 마이그레이션은 어쨌든 DB를위한 것이라고 생각했습니다. –

+0

따라 가기 링크는 레이크 작업과 함께'WickedPdf'를 사용하는 방법을 지정하지 않습니다. 아마도 Rails 응용 프로그램에'WickedPdf'를 올바르게 추가했을 것입니다. 그렇다고해서 반드시 여러분의 커스텀 레이크 작업이'WickedPdf'를 알고 있다는 것을 의미하지는 않습니다. 아래 @ alfonso의 해결책을 시도해 보면 효과가있다. –

답변

2

rake db:migrate을 실행할 때 문제가 발생하는 경우 defined?으로 이니셜 라이저를 바꿀 수 있습니다.

if defined?(WickedPdf) 
    WickedPdf.config = { 
    :exe_path => '/usr/local/bin/wkhtmltopdf' 
    } 
end 
+0

감사하지만, 해당 코드가 앱에서 실행될 때 작동하지 않는다는 것을 의미하지 않습니까? db : migrate가 실행할 수 없다면? –

+1

@eb_dev 앱이 이미 작동 중이면 WickedPdf가 해당 환경에로드되어 있으므로이 해킹이 작동 함을 의미합니다. 그래도 해봐야 해. – alf

관련 문제