MongoMapper中是否有任何保留的密钥名称?

时间:2010-06-25 06:07:05

标签: ruby mongodb mongomapper

我可以使用名为:key的密钥声明模型吗?我不能使用任何密钥吗?

3 个答案:

答案 0 :(得分:3)

_id和_type。此外,任何可以创建方法的东西都与mongomapper doc / edoc实例方法相同,例如关联等。

答案 1 :(得分:2)

答案 2 :(得分:0)

以下是John Nunemaker回答的一个具体例子。

我发现在对象的实例代码中引用了以下标记的困难方式因此会与任何同名的密钥冲突(mongo_mapper / plugins / callbacks.b):

:destroy
:save
:create
:update

如果你定义

key :update, Integer

然后你将能够获取,删除,POST,但不能PUT,因为那会尝试调用run_callbacks(:update),这在那时已经变成了废话。我不知道如何修复它,所以我可以在我的模型中有一个名为“更新”的字段。任何人吗?

后续:似乎执行实际更新的实例方法也称为:update,因此无法消除这些令牌用于回调的使用。相反,这只是一个与实例方法冲突的情况,这种方法会导致更奇怪的错误,因为它在用作方法之前被用作回调类型FIRST。