我有ReactJS NextJS web-app。下面的代码将正确的值输出到terminal,但是它根本没有更新database。因此,我认为faunaDB Update函数被错误地指定。所有4 console.log调用都输出正确的值。
const faunadb = require("faunadb");
// your secret hash
const secret = process.env.FAUNADB_SECRET_KEY;
const q = faunadb.query;
const client = new faunadb.Client({ secret });
console.log("CALLLED API")
module.exports = async (req, res) => {
const formData = req.body;
console.log("API CALL");
try {
const dbs = await client.query(
console.log("API UPDATE"),
console.log(formData.likes[0].data.like + 1),
q.Update(
q.Ref(q.Collection('Likes'), '__likes_reference__'),
{
data: {
like: formData.likes[0].data.like + 1,
},
}
)
);
// ok
res.status(200).json(dbs.data);
} catch (e) {
// something went wrong
res.status(500).json({ error: e.message });
}
};如何在数据库中增加likes的值?
发布于 2021-08-19 13:12:13
我使用以下代码将likes的值通过1递增:
q.Update(
q.Ref(q.Collection('Likes'), '__likes_reference__'),
{
data: {
like: q.Add(
q.Select(
['data', 'like'],
q.Get(
q.Ref(
q.Collection('Likes'),
'__likes_reference__'
)
)
),
1
)
}
},
)发布于 2021-08-06 15:20:46
这是您的参考id,'likes_reference‘,您的一些随机生成的数字。如果存在这个数字,那么使用它从集合中获取文档的引用,您可以将输出添加到问题中以获得更多的理解。
like: (formData.likes[0].data.like + 1),您可以用括号包围类似的计数,也可以尝试
https://stackoverflow.com/questions/68673511
复制相似问题