在 Nextcord 中启用和禁用命令
Enable and Disable Command in Nextcord
我正在尝试创建一个可以禁用和启用我当前的任何命令的命令。但它不断返回以下错误:
nextcord.ext.commands.errors.CommandInvokeError: Command raised an
exception: AttributeError: module 'nextcord.ext.commands' has no
attribute 'get'
这是该命令的当前代码:
@commands.command()
@commands.has_role("HR")
async def toggle(self, ctx, *, command):
command = commands.get.command(command)
role = nextcord.utils.get(ctx.guild.roles, name="owner")
if ctx.command == command:
await ctx.reply("nice try")
else:
command.enabled = not command.enabled
tf = "enabled" if command.enabled else "disabled"
await ctx.send(f"I have {tf} {command.qualified_name} for you!")
这只是一个错字。该函数的名称是 get_command
。您可能还想使用 @commands.is_owner()
这样只有机器人的所有者才能禁用命令而不是公会角色,但这取决于您。此外,这似乎是一个齿轮,因此您应该根据 __init__()
.
中的内容使用 self.client
或 self.bot
@commands.command()
@commands.is_owner()
async def toggle(self, ctx, command):
command = self.client.get_command(command)
role = nextcord.utils.get(ctx.guild.roles, name="owner")
if ctx.command == command:
await ctx.reply("nice try")
else:
command.enabled = not command.enabled
tf = "enabled" if command.enabled else "disabled"
await ctx.send(f"I have {tf} {command.qualified_name} for you!")
我正在尝试创建一个可以禁用和启用我当前的任何命令的命令。但它不断返回以下错误:
nextcord.ext.commands.errors.CommandInvokeError: Command raised an exception: AttributeError: module 'nextcord.ext.commands' has no attribute 'get'
这是该命令的当前代码:
@commands.command()
@commands.has_role("HR")
async def toggle(self, ctx, *, command):
command = commands.get.command(command)
role = nextcord.utils.get(ctx.guild.roles, name="owner")
if ctx.command == command:
await ctx.reply("nice try")
else:
command.enabled = not command.enabled
tf = "enabled" if command.enabled else "disabled"
await ctx.send(f"I have {tf} {command.qualified_name} for you!")
这只是一个错字。该函数的名称是 get_command
。您可能还想使用 @commands.is_owner()
这样只有机器人的所有者才能禁用命令而不是公会角色,但这取决于您。此外,这似乎是一个齿轮,因此您应该根据 __init__()
.
self.client
或 self.bot
@commands.command()
@commands.is_owner()
async def toggle(self, ctx, command):
command = self.client.get_command(command)
role = nextcord.utils.get(ctx.guild.roles, name="owner")
if ctx.command == command:
await ctx.reply("nice try")
else:
command.enabled = not command.enabled
tf = "enabled" if command.enabled else "disabled"
await ctx.send(f"I have {tf} {command.qualified_name} for you!")