我正在尝试创建一个kick
功能,如果AdminRole类型/kick
@user,它就会踢他们,但是如果MemberRole中的某个人试图说/kick@user
它会回复对不起,你没有使用此功能的权限
client.on("message", (message) =>
{
if (message.content.startsWith("/kick"))
//checking if user is an admin role
if (message.member.roles.find('AdminRole'))
{
var member= message.mentions.members.first();
// Kick
member.kick().then((member) => {
// Successmessage
message.channel.send(":wave: " + member.displayName + " has been successfully kicked :point_right: ");
}).catch(() => {
// Failmessage
message.channel.send("Sorry, command failed");
});
}
if (message.member.roles.find('MemberRole'))
{
message.reply("Sorry, you don't have permissions to use this!");
}
});
这是它抛出的错误,请记住,它只在有人键入
/kick
命令时抛出此错误,而不考虑角色
如果
(typeof value==='未定义')
抛出新的错误('value必须指定.')
;^
错误:值必须指定。在Map.find(/用户/主用户/桌面/机器人/node_modules/discord.js/src/util/Collection.js: 499:45)在Client.client.on(/用户/主用户/桌面/机器人/index.js:12: 34)在Client.emit(events.js:198: 13)在MessageCreateHandler.handle(/用户/主用户/桌面/机器人/node_modules/discord.js/src/client/websocket/packets/handlers/MessageCreate.js: 9:34)在WebSocketPacketManager.handle(/用户/主用户/桌面/机器人/node_modules/discord.js/src/client/websocket/packets/WebSocketPacketManager.js: 105:65)在WebSocketConnection.on包(/用户/主用户/桌面/机器人/node_modules/discord.js/src/client/websocket/WebSocketConnection.js: 333:35)在WebSocketConnection.on消息(/用户/主用户/桌面/机器人/node_modules/discord.js/src/client/websocket/WebSocketConnection.js: 296:17)在WebSocket.on消息(/用户/主用户/桌面/机器人/node_modules/ws/lib/event-target.js:120: 16)在WebSocket.emit(events.js:198: 13)在Receiver.receiverOnMessage(/用户/主用户/桌面/机器人/node_modules/ws/lib/websocket.js:789: 20)
您的错误来自您当前使用的Collection.find()
。
不正确:Collection.find('属性')
弃用:Collection.find('属性','值')
正确:Collection.find(元素=
const prefix = '/';
client.on('message', async message => {
if (!message.content.startsWith(prefix) || message.author.bot) return;
const [cmd, ...args] = message.content.trim().slice(prefix.length).split(/\s+/g);
switch(cmd.toLowerCase()) {
case 'kick':
try {
if (!message.guild) return await message.channel.send(':x: Guilds only.');
if (!message.member.roles.find(r => r.name === 'Admin')) return await message.channel.send(':x: No permission.');
if (!args[1] || !message.mentions.members.first()) return await message.channel.send(':x: No member provided.');
const toKick = message.mentions.members.first();
const reason = args.slice(2).join(' ') || 'No Reason';
if (!toKick.kickable || toKick.roles.find(r => r.name === 'Admin')) return await message.channel.send(':x: No permission.');
await toKick.kick(reason);
await message.channel.send(`:wave: ${toKick.user.displayName} has been kicked.`);
} catch(err) {
console.error(err);
}
break;
}
});
仅企业版可用 请求header PUT /v1/account/createActManager Authorization:Bearer {ACCESS TOKEN} 注: 请将上方的{ACCESS TOKEN}替换为您的ACCESS TOKEN 请求payload { "username" : "管理员A", "cost_type" : "1", "cost_limi
我从用户模型中继承了三个用户,即Admin、Employee和Relative。 models.py 管理派克 管理员将是超级用户。管理员将前往管理站点,对员工和亲属执行CRUD。在表单中,我只希望管理员输入员工/亲属的用户名(PAN_ID)、密码和电子邮件。单击保存后,应发送邮件的相应信号,并发送电子邮件,以便在邮件功能中访问密码。密码应由make_password自动生成。我得到以下错误。 内
一、简介 添加和管理管理员。 二、功能演示 1.添加管理员 2,管理管理员 对不需要或过期的管理员进行编辑和删除操作。如下图所示:
一、简介 角色定位了拥有此角色的所有管理员权限,管理员可以为不同的角色成员分配不同的权限配置。 二、功能演示 1.成员管理 对该角色下所有管理员进行管理 2.角色编辑 编辑和添加操作相同,不做详述。 3.口令卡 V9系统集成了口令卡功能,使用户信息更见保密。下面我们做详细介绍。如下图: 点击“申请口令卡”后会提示申请成功.如下图: 注:申请口令卡成功后,请一定妥善保管生成的图片;如丢失,您将不能登
我对Liquibase(最新版本3.2.2)有一个奇怪的问题。 它没有检测到DATABASECHANGELOG已经存在,因此尝试创建它但失败。 如您所见,创建了表和元数据表: 但当我再次运行时,不是没有任何操作,而是得到一个错误:
问题内容: 我想创建一个供个人使用的简单堆叠窗口管理器,主要用于学习和挑战自我。 我浏览了的源代码,它的花样少,但由于它不是基于小部件工具箱的,因此它的级别似乎很低。1使用GTK +之类的工具箱会更好吗?恐怕其中的某些代码和库可能过于陈旧( 编辑: 已弃用),我希望窗口管理器使用相对较新的库。为了理解,我也将对如何从头启动窗口管理器的建议感兴趣-为此目的的教程并不多。 更新: 对于那些考虑类似项目