【问题标题】:Meteor: retrieve value from document in collectionMeteor:从集合中的文档中检索值
【发布时间】:2015-08-26 23:50:11
【问题描述】:

我有一个名为“balance”的集合。我想获取集合中一个文档的值。为了仅获取集合中的最新元素,我使用此查询:

db.balance.find().sort({date: -1}).limit(1);

有一个名为“价值”的列,我想得到它。

db.balance.find().sort({date: -1}).limit(1).value; 但是没有显示我想要的数据。它什么也没显示:

这有什么问题?

【问题讨论】:

    标签: javascript mongodb meteor


    【解决方案1】:

    find 返回一个游标。您需要将其转换为数组才能实际提取值。试试这个:

    db.balance.find().sort({date: -1}).limit(1).toArray()[0].value;
    

    当然,这在流星内部要容易得多(无论是在代码中还是通过meteor shell),因为您可以这样做:

    Balance.findOne({}, {sort: {date: -1}}).value;
    

    【讨论】:

    • 谢谢!一个快速的问题。如果我将该值添加到另一个值(例如 1 + 2)而不是得到 3,我得到 2。这是为什么呢?是因为它们是字符串吗?如何将它们转换为整数?
    • 看起来它们是字符串。您可能应该首先将它们存储为整数。如果它们仍然是字符串,添加它们的一种简单方法是首先将它们转换为 Number 对象 - 例如Number(value1) + Number(value2).
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多