GridFS.put() 和 GridFSBucket.upload_from_stream() 之间的区别
Difference between GridFS.put() and GridFSBucket.upload_from_stream()
在doc中,它说:
GridFS.put()
Put data in GridFS as a new file.
和
GridFSBucket.upload_from_stream()
Uploads a user file to a GridFS bucket.
Reads the contents of the user file from source and uploads it to the
file filename.
我想一个将文件存储在 GridFS
中,另一个存储在 GridFSBucket
中。
但这到底是什么意思?什么时候使用一个而不是另一个?
基于this thread:
GridFSBucket
是对 GridFS API 的补充,需要在各种驱动程序之间统一 Mongo API。
它是一个较新的 API 并且更加一致,因此它应该优于 GridFS
class(也是出于灵活性原因)。 GridFS
的旧 API 不会消失,但在不可预见的未来发生这种情况的可能性更高。
在幕后 GridFSBucket
公开了更多选项(例如,可能有多个文件桶 - 不仅仅是 'fs'
一个)。
在doc中,它说:
GridFS.put()
Put data in GridFS as a new file.
和
GridFSBucket.upload_from_stream()
Uploads a user file to a GridFS bucket.
Reads the contents of the user file from source and uploads it to the file filename.
我想一个将文件存储在 GridFS
中,另一个存储在 GridFSBucket
中。
但这到底是什么意思?什么时候使用一个而不是另一个?
基于this thread:
GridFSBucket
是对 GridFS API 的补充,需要在各种驱动程序之间统一 Mongo API。
它是一个较新的 API 并且更加一致,因此它应该优于 GridFS
class(也是出于灵活性原因)。 GridFS
的旧 API 不会消失,但在不可预见的未来发生这种情况的可能性更高。
在幕后 GridFSBucket
公开了更多选项(例如,可能有多个文件桶 - 不仅仅是 'fs'
一个)。