使用ruby将doc _id作为字符串传递时发生Mongo remove()错误

时间:2014-11-18 01:27:42

标签: ruby mongodb

coll.remove(params[:id])

我通过网址?id=546a691d7b76eb0909000001

传递ID字符串

我在代码行中收到以下错误:

Database command 'delete' failed: wrong type for 'q' field, expected object, found q: "546a691d7b76eb0909000001"

我是否需要将字符串转换为ObjectID,如果是这样的话?

1 个答案:

答案 0 :(得分:1)

我得到了它的工作:

coll.remove({" _id" => BSON :: ObjectId.from_string(params [:id])})

我错过了" _id" =>我需要使用BSON :: ObjectId.from_string