javascript 将mongodb 'payments._id'更改为时间戳

gijlo24d  于 2023-01-04  发布在  Java
关注(0)|答案(1)|浏览(117)

请将“payments._id”的值更改为时间戳。“payments._id”对象是在向集合中插入文档时由MongoDB创建的。

onMounted(async () => {
  const res = await axios.get("http://127.0.0.1:49146/server/po_payment");
  payments.value = res.data;

我正在尝试将MongoDB集合中文档的_id字段转换为时间戳。我尝试使用getTimestamp(),但它不起作用。我看到它在MongoDB shell中工作,但我不确定它是否只能在那里使用。我在网上搜索过,但我仍然不确定如何做到这一点。您能建议一个解决方案吗?”

onMounted(async () => {
  const res = await axios.get("http://127.0.0.1:49146/server/po_payment");
  payments.value = res.data; 
  payments.value.forEach(payment => {
    payment.timestamp = new ObjectId(payment._id).getTimestamp();
  });
jhdbpxl9

jhdbpxl91#

function objectIdToTimestamp(objectId) {
    return parseInt(objectId.substring(0, 8), 16);
};

MongoDB使用前8个字符将时间戳存储为十六进制,您可以使用这里的函数轻松地提取它。

相关问题