1

私のプロジェクトでは、CarrierWave gem を使用してオーディオファイルを GridFS にアップロードします。アップロード後、ファイルは GridFS に適切に保存されますが、私のアプリケーションでは、MongoFiles ツールまたは GridFS-nginx モジュールを使用して GridFS からファイルを取得できません。

mongofiles get audiotracks/4dfb70d6bcd73f3488000002/data

コマンドを実行すると、次のエラーが発生します。

assertion: 13325 couldn't open file: audiotracks/4dfb70d6bcd73f3488000002/data

ファイルを取得する唯一の方法は、Rails コンソールを使用することであり、正常に動作します。

cc = Mongo::GridFileSystem.new(Mongo::Connection.new.db("test")).open('audiotracks/4dfb70d6bcd73f3488000002/data', 'r')

cc.read

このような問題に遭遇した場合、またはアイデアがある場合は、お知らせください。

4

1 に答える 1

0

mongofiles getGridFS と同じ名前とパスでファイルをディスクに書き込もうとします。

アサーション 13325 は、GridFS がこのようにファイルを書き込めない場合に発生します。

ファイル パスが存在するかどうか、およびファイルへの書き込み権限があるかどうかを確認する必要があります。または、パラメータでファイル名を指定することもでき--localます。

mongofiles --local mytrack.mp3 get audiotracks/4dfb70d6bcd73f3488000002/data
于 2011-07-07T13:36:50.050 に答える