1

ruby script / plugin install http://github.com/thoughtbot/paperclip.gitを使用して、プラグインとしてペーパークリップをプロジェクトにインストールしました。

モデル:

class Company < ActiveRecord::Base
   has_attached_file :logo, :styles => { :large => "300x300>", :medium => "100x100>", :thumb => "50x50>" }
   validates_attachment_content_type :logo, :content_type => image/jpeg, :message => "Incorrect logo file type!"
   validates_attachment_size :log, :max => 200, :message => "big file" 
end

ただし、コントローラーメソッドは次のように返します。CompaniesController#new undefined method `has_attached_file'for#のNoMethodError

モデルクラスの前に「「ペーパークリップ」が必要」とすると、次のように返されます。CompaniesController#newのMissingSourceFileロードするファイルがありません--paperclip

何が問題ですか?

4

4 に答える 4

1

ペーパークリップRailscastは、ペーパークリップで遊んでみるのに最適な情報源です。これらの手順に従ってみて、問題が解決しない場合はお知らせください。

于 2010-02-04T16:36:30.020 に答える
1

プラグインとしてペーパークリップをインストールしたので、実際にアプリの正しいパスに配置されていることを確認してください。正しくない可能性は低いようですが、機能していないものではなく、機能しているものを確認してトラブルシューティングを行うことをお勧めします:)

次のようなフォルダ構造が必要です。

RAILS_ROOT / vendor / plugins / paperclip / lib / paperclip.rb

このように見える場合、レールはサーバーを再起動するたびにデフォルトでpaperclip.rbをロードする必要があります。これは、アプリがデフォルトですべてのプラグインをロードしないように構成されていない限りです。これらの構成は、config/environment.rbにあります。

次のようなエントリを探します。

config.plugins ...
config.plugin_paths ...
config.plugin_locators ...
config.plugin_loader ...

そのようなエントリを見つけた場合は、それが問題の原因である可能性があります。

于 2010-11-19T02:43:46.190 に答える
0

行を追加する:

config.gem "paperclip"

'config / environment.rb'を実行すると、gemがインストールされていると仮定して、この問題を解決できます。

于 2010-11-19T02:25:21.517 に答える
0

ImageMagickのインストールが欠落していることが原因である可能性があります。PaperclipはImageMagickを使用して画像を処理します。ペーパークリップを適切に使用するには、ImageMagickがインストールされており、ペーパークリップがそれにアクセスできることを確認してください。

ImageMagickをインストールします(Mac OS Xを使用している場合)。

brew install imagemagick

imagemagickの場所をペーパークリップに伝え、追加

Paperclip.options[:command_path] = '/usr/local/bin/'

config / environment/development.rbに

お役に立てれば。

于 2012-07-01T09:47:31.137 に答える