0

私は、ペーパークリップを介して画像をアップロードし、実行するために文字列パスを必要とするopencv-backed ruby​​ extension gemで画像処理を実行するWebアプリを実行しています。私が使用しているコードは次のとおりです。

imageFiles # => Array of ActiveRecord objects with attached paperclip files ('image')
filenames = Array.new()
imageFiles.each{ |imFile|
    filenames.push( imFile.image.path )
}
imgproc = ImageProcessor.new # => extension
imgproc.process( filenames )

これにより、次のエラーが表示されます。

can't convert Paperclip::Attachment into String

私が押すと:

imFile.image.file_name

代わりに、私のエラーは次のようになります。

undefined method `file_name' for /xxx/xxx/xxx/000/000/062/original/img.jpg?1340296339:Paperclip::Attachment

私は正しい道を進んでいますか、それとも欠けているステップがありますか? 前もって感謝します!

4

3 に答える 3

0

以前、私はファイル自体ではなくファイル名の配列に画像をプッシュしていたことがわかりました。これは、ダックタイプの言語の危険性の1つです。

于 2012-07-08T16:06:41.260 に答える
0

opencv-backedがどのように機能するかはわかりませんが、画像オブジェクトのみをプッシュしてみることができます。

filenames.push( imFile.image )
于 2012-06-21T16:40:38.733 に答える