gpt4 book ai didi

javascript - 从前端编辑用户信息

转载 作者:行者123 更新时间:2023-12-01 01:53:28 34 4
gpt4 key购买 nike

我正在使用 mongodb 构建一个具有注册/登录系统的网站。我已成功创建一个 admin 页面,该页面只能由管理员访问(if access > 0)。在管理页面上显示所有用户,其中包括用户名、电子邮件、电话号码和积分。我想做的是能够使用网页上的管理员帐户增加用户的积分。以下是使用 jade js 显示用户的方式以及它在页面上的外观:

ul
每个用户,我在用户列表中
li#user_list_item
标签 用户名:  
跨度#{用户.用户名}  
标签电子邮件:  
跨度 #{user.email}  
标签要点:
跨度 #{user.points}  
Button.btn.btn-primary() +pts
 
标签电话:
跨度 #{user.phoneNo}  
标签权限:
跨度#{用户.权限}

enter image description here

点旁边有一个按钮,其名称为+pts。当按下该按钮时,我想增加该按钮所在的用户的积分。假设我点击第一个用户名处的按钮:admin,因此积分将增加 1,因此新积分为 1005。标签只是在 css 中改变它们的颜色。如何通过可用于每个按钮的一个功能来实现这一目标?这是我在管理页面上使用的获取请求

router.get('/admin', isAdmin, function(req, res) {
const MongoClient = mongodb.MongoClient;
const url = 'mongodb://localhost:27017/gymsite';

MongoClient.connect(url, function(err, db) {
if (err) {
res.send({
msg: "Failed to connect to db"
});
} else {
const users = db.collection('users');

users.find({}).toArray(function(err, result) {
if (err) {
res.send(err);
} else if (result.length) {
res.render('admin', {
'userlist': result
});
} else {
res.send({
msg: 'No users found'
});
}
db.close();
});
}
});

});

isAdmin 是一个函数,用于检查用户是否 isAutheinticated 以及该用户的权限是否大于0。基本上它只检查它是否是管理员。

我希望我清楚地写下了我想要实现的目标。

先谢谢大家了!

最佳答案

一开始,仅设置一个与数据库的连接可能会很有用,promise在这里很有帮助,此外,我们可以在实用程序中使用路由内的数据库:

enter image description here

现在我们知道了,管理页面可以缩短为:

enter image description here

现在要将设置应用于用户,我们需要一个 API 端点:

enter image description here

并且您必须更改管理路径下呈现的 html,以便您可以轻松使用它:

enter image description here

然后,每当单击更新时,您只需在后台向 API 发出请求即可:

enter image description here

关于javascript - 从前端编辑用户信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51233996/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com