sbo*_*ose 3 python django mongodb pymongo gridfs
我在Openshift中使用Python + MongoDB + PyMongo
import os
import gridfs
from django.http import HttpResponse
from pymongo.connection import Connection
from django.shortcuts import get_object_or_404, render_to_response
from django.http import HttpResponseRedirect, HttpResponse
from django.template import Context, RequestContext,loader
connection = Connection('mongodb://sbose78:XXXXXX@staff.mongohq.com:10068/BOSE')
db=connection['BOSE']
fs=gridfs.GridFS(db)
Run Code Online (Sandbox Code Playgroud)
当我通过_id查询文件时,这就是我得到的.
>>> fs.exists({"_id":'504a36d93324f20944247af2'})
False
Run Code Online (Sandbox Code Playgroud)
当我用相应的文件名查询时:
>>> fs.exists({"filename":'foo.txt'})
True
Run Code Online (Sandbox Code Playgroud)
什么可能出错?
谢谢.
Tho*_*mas 13
对于pymongo版本<2.2,您需要导入ObjectId
from pymongo.objectid import ObjectId
Run Code Online (Sandbox Code Playgroud)
对于2.2及更高版本,导入是相反的
from bson.objectid import ObjectId
Run Code Online (Sandbox Code Playgroud)
然后您可以像这样查询gridfs:
fs.exists(ObjectId('504a36d93324f20944247af2'))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4160 次 |
| 最近记录: |