我需要在GridFS中更新文件的元数据。
我环顾四周,发现这是不可能的,唯一的解决方案是删除旧记录并创建一个具有相同ID的新记录。
如何创建具有相同旧ID的新记录?
我试过设置:_id => id:元数据哈希中的id,但它不起作用。
谢谢!
答案 0 :(得分:2)
我发现您可以访问files_collection,其中保存了所有信息,并更新它,如下所示:
metadata = database.fs.files_collection.find(id_criteria).first[:metadata]
metadata[:value] = { whatever info here }
database.fs.files_collection.find(:_id => id).update_one("metadata" => metadata)