사용자가 이미지를 업로드 할 때 PyMongo
을 사용하여 데이터베이스에 연결하고 있습니다. 컬렉션의 사용자 특정 문서 내에 GridFS
을 사용하여 이미지를 저장하고 싶습니다.이미지를 MongoDB에 저장하십시오.
class uploadHandler(BaseHandler):
@tornado.web.authenticated
def get(self):
self.render("upload.html",user=self.current_user)
def post(self):
db = pymongo.Connection('mongodb://heroku_app.mongolab.com:/heroku_app').heroku_appxxxx
user = db.userInfo.find_one({'Username':self.current_user})
file1 = self.request.files['images'][0]
original_fname = file1['filename']
print "file: " + original_fname + " is uploaded"
fs = gridfs.GridFS(user)
fs.put(file1)
#db.userInfo.update({'Username':self.current_user},{'$push':{'Images': file1}})
self.redirect('/upload')
을하지만이 나에게 오류를 제공합니다 : I는 그렇게하고 있어요 이미지가 가장 좋은 다음 집합에서 특정 문서의 MongoDB를 저장 할 수있는 방법
Traceback (most recent call last):
File "C:\Python27\lib\site-packages\tornado\web.py", line 1332, in _execute
result = method(*self.path_args, **self.path_kwargs)
File "C:\Users\rsaxs\workspace\pie\src\Server.py", line 4101, in post
fs = gridfs.GridFS(user)
File "C:\Python27\lib\site-packages\gridfs\__init__.py", line 53, in __init__
raise TypeError("database must be an instance of Database")
TypeError: database must be an instance of Database
?
그래, 추적 라인의 마지막 라인은 * 믿어지지 않는 * 도움이된다. – vaultah
@vaultah, 더 도움이되도록 업데이트되었습니다. – user94628