2012-03-13 15 views

答えて

6

最初にget a connection to the databaseとします。dbとします。そして、あなたはMongo::GridMongo::GridFileSystemインスタンスとしてごGridFSに接続することができます。

fs = Mongo::Grid.new(db) 
fs = Mongo::GridFileSystem.new(db) 

今、あなたはfsMongo::GridExt::InstanceMethodsメソッドを使用することができます。それが何かを見つけた場合、それはあなたのハッシュを与えるよう

f = fs.exist? :filename => 'pancakes.png' 

exist?方法が不十分という名前で、nilそれがない場合はありません:特に、あなたはexist?を使用することができます。

たとえば、/pancakes/に一致するすべてのファイル名を検索する場合、これはあまり役に立ちません。しかし、GridFSは通常のMongoDBコレクションのペアに過ぎません。

  • fs.files:ファイルメタデータです。
  • fs.chunks:ファイルデータ(チャンク単位)。

あなたが任意のメタデータの検索を行いたい場合は、あなただけのfs.filesに手を取得し、それをあなたの方法を持っている必要があります。

fs  = db['fs.files'] 
cursor = fs.find(:filename => /pancakes/) 
# Now iterate through cursor or .count it or ... 

上記fsMongo::Collectionになりますので、そのfind methodはすべて受け入れ通常のクエリオプション。

関連する問題