我试图做一个简单的查询,从我的火还原数据库,但我错过了一些非常明显的东西。我试着在网上寻找,但没有什么工作。对于一些背景,我有一个“cf”集合,我试图查询一个“hsc”值等于“1”的对象,但我没有得到任何回报。
exports.getOneTodo = (request, response) => {
db
.collection('cf')
.where("hsc", "==", "1")
.get()
.then((doc) => {
if (!doc.exists) {
return response.status(404).json(
{
error: 'Todo not found'
});
}
TodoData = doc.data();
TodoData.todoId = doc.id;
return response.json(TodoData);
})
.catch((err) => {
console.error(err);
return response.status(500).json({ error: error.code });
});
};
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write
}
}
}
我正在通过邮递员测试这个。我试图改变firebase规则,使之适用于任何情况,但仍然没有任何效果。
更新:以下是我如何初始化我的数据库
const admin = require('firebase-admin');
admin.initializeApp();
const db = admin.firestore();
module.exports = { admin, db };
您的代码需要一个文档,但必须为查询返回多个文档做好准备。在查询对象上运行get()
时,将生成一个QuerySnapshot对象。从API文档中可以看到,它没有exists
属性。对该属性的检查将始终为“false”。您需要做的是检查结果,首先查看是否有任何文档,然后获取第一个文档:
db
.collection('cf')
.where("hsc", "==", "1")
.get()
.then((qsnapshot) => {
if (qsnapshot.docs.length > 0) {
const dsnapshot = qsnapshot.docs[0];
// send the response using dsnapshot.data()
}
else {
// send the response saying nothing was found
}
})
问题内容: 我有带日期对象的文档。 初始化Firestore的代码: 查询代码: 我总是在获取所有记录,并且看起来where子句没有得到应用。在Firebase控制台上,我看到的存储为时间戳。 Firebase控制台中的文档: 问题答案: Cloud Firestore查询是不可变的,这意味着您无法更改现有查询的属性。如果通过调用方法更改值,它将成为一个新查询。因此,要解决此问题,请链接所有方法调
我想从例程中查询我的锻炼集合以获取最新的锻炼。这意味着我使用查询我的例程Key,按开始时间戳降序排列,然后限制为1,然后取锻炼的第一个Key/Id。 但是这不起作用。和单独工作但不组合。我做错了什么?
我已经读过这个答案,如何组合多个And和Or通过方法名,我同意它。但是,我不认为我的情况像行动的复杂,你可以看到。只是“and”和“OR”查询条件组合,这在SQL方式中是相当容易的,但我只想通过JPA方式来实现。
问题内容: 我已经为此奋斗了2天,尽我所能用Google搜索和stackoverflow,但是我无法解决。 我正在构建一个简单的节点应用程序(+ Express + Mongoose),其登录页面重定向到主页。这是我的服务器JS代码: 登录页面向发出POST请求,在此验证发布的数据。这可行。我可以在Node控制台中看到“我们在这里:’/ credentials’”。 然后是问题:res.redir
为什么我的搜索函数永远不会执行“else”(如果没有找到结果,else应该回显文本)?我在尝试显示所有结果时也遇到了一些问题(没有选择搜索标准,只需按搜索按钮)。我将上传页面的全部代码,因为我不知道您是否也需要HTML部分来解决问题。我知道这是一个很大的代码块,但如果可以的话,请帮忙。谢谢 以下是我的代码链接:http://pastebin.com/BXe1C0dr
我有一个自定义案例类异常: 在我的 dao 中,我有一个从数据库中提取对象的方法,该方法返回 future,如果此将来失败,我将抛出我的 RecordNotFoundException 异常: 在另一个方法中,我调用getPerson方法,所以我将恢复添加到另一个方法中,当未来使用RecordNotFoundException失败时,我想返回一些东西: 因此,基本上,我希望当getPerson失败