私はモデルへの添付用に thinkbot のペーパークリップを使用していますが、Mac OS X と雑種を実行している私の開発マシンではすべて正常に動作します。ただし、apache/mod_rails (2.2.5) を実行している debian マシンにアプリをデプロイすると、開始できません。「undefined method has_attached_file」(または初期化子を使用した「uninitialized constant Paperclip」) を取得します。簡単な解決策があると確信していますが、私は目が見えないようです...ヒントはありますか?ありがとう!
3 に答える
この gem がターゲット マシンに正しくインストールされていることを確認してください。Passenger のインストール時に REE を使用した場合は、gem の代わりに gem-e を使用して gem をインストールする必要があります。要するに:
sudo gem-e install ペーパークリップ
宝石を「販売」することをお勧めします。config.gem 構文を使用して、environment.rb ファイルで使用する gem を要求するだけです (より具体的な手順については、オンラインで検索できます)。これらのエントリがそこにある場合は、'rake gems:unpack' を実行し、インストールした gem を実行します。アプリに必要な (config.gem エントリを介して) ものは、vendor/gems に配置されます。
このようにして、アプリは宝石の場所を常に知ることができます...
ブラインドは正しかった!environment.rb の適切な config.gem エントリを介して paperclip gem を指定することで、最終的に問題を解決しました。私は 2 つの異なる environment.rb ファイルを維持しています。1 つは開発用、もう 1 つは運用サーバー用です。後者に paperclip の config.gem 行を追加するのを忘れていました。乾杯!