首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数据映射器,Ruby:维护ID一致性?

数据映射器,Ruby:维护ID一致性?
EN

Stack Overflow用户
提问于 2013-06-18 17:30:50
回答 1查看 40关注 0票数 0

我正在使用DataMapper编写一个简单的应用程序。在我的数据库中保持一致的I(序列属性)在某种程度上是至关重要的(它可以自由改变),所以我写了这个简单的脚本,它遍历每条记录并修复I,使它们保持一致(例如1,2,3...)。

问题是,每次我添加一个新记录时,它都会添加一个新的ID,这打破了一致性-就好像以前的记录没有被修复一样。

我怎样才能防止这种行为?或者更确切地说,有没有更简单的方法来维护is的逻辑进程?我有一种明显的感觉,我不应该手动更改ID。

EN

回答 1

Stack Overflow用户

发布于 2013-06-18 23:22:00

datamapper通常创建顺序ids,但此顺序可能与您的“逻辑顺序”不同。

示例:

创建临时条带对象(原型)并将其删除( again

  • ..

  • )您以另一种顺序创建条带对象,然后希望对其进行排序并将其删除

我认为你不应该强迫datamapper使用你的ids。相反,我推荐一个像"nekkoru_number“这样的额外字段,您可以根据自己的想法进行计算。在您的情况下,使用唯一的名称而不是数字也可能是一个好主意。

还可以考虑像这样的用例

the

  • inserting an object later

  • reordering objects (使用对象插入对象)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17165319

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档