通过 FaunaDB 查询更新值
Updating a value via a FaunaDB query
我有一个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
的值?
这是你的参考 ID 'likes_reference' 你的一些随机生成的数字。如果存在该数字,则使用它从集合中获取文档的引用,您可以将输出添加到问题中以获得更多理解
like: (formData.likes[0].data.like + 1),
您可以用方括号括起点赞数,然后也试试
我使用以下代码将 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
)
}
},
)
我有一个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
的值?
这是你的参考 ID 'likes_reference' 你的一些随机生成的数字。如果存在该数字,则使用它从集合中获取文档的引用,您可以将输出添加到问题中以获得更多理解
like: (formData.likes[0].data.like + 1),
您可以用方括号括起点赞数,然后也试试
我使用以下代码将 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
)
}
},
)