【问题标题】:Discord.py, making a server lockdown command. Not working as intendedDiscord.py,制作服务器锁定命令。未按预期工作
【发布时间】:2019-10-10 21:18:37
【问题描述】:

因此,我正在编写一个命令来更新我要求的每个频道的权限。但是,我在让所有渠道更改其烫发方面遇到问题。它更新了执行命令的通道,但没有更新其他通道。我假设这是因为 Context 不是我应该在这个命令中使用的。这是我的代码:

@zip.command(aliases=['sd'])
@commands.has_role('Mods')
async def shutdown(ctx):
    await ctx.message.delete()
    intro = zip.get_channel(631272968093433856)
    await ctx.channel.set_permissions(ctx.guild.default_role, send_messages=False)
    suggestions = zip.get_channel(631881727064801280)
    await ctx.channel.set_permissions(ctx.guild.default_role, send_messages=False)
    general = zip.get_channel(630907637919121420)
    await ctx.channel.set_permissions(ctx.guild.default_role, send_messages=False)
    memes = zip.get_channel(631273005489586176)
    await ctx.channel.set_permissions(ctx.guild.default_role, send_messages=False)
    wholesome_me = zip.get_channel(631273030265602090)
    await ctx.channel.set_permissions(ctx.guild.default_role, send_messages=False)
    music_d = zip.get_channel(631273090260926475)
    await ctx.channel.set_permissions(ctx.guild.default_role, send_messages=False)
    no_mic = zip.get_channel(631273262047035413)
    await ctx.channel.set_permissions(ctx.guild.default_role, send_messages=False)
    bot_com = zip.get_channel(631273294170947605)
    await ctx.channel.set_permissions(ctx.guild.default_role, send_messages=False)
    await ctx.send("**SERVER HAS BEEN LOCKED DOWN**")

我还有一个 unshutdown 命令,可以将它们全部重置为 None。格式相同

控制台中没有错误,代码运行但未按预期工作。我再次认为这是它的 ctx 部分,但我希望得到一些帮助。

非常感谢您花时间阅读本文

【问题讨论】:

    标签: python discord.py


    【解决方案1】:

    您每次都在为ctx.channel 设置权限。相反,为您获得的通道对象设置它们:

    intro = zip.get_channel(631272968093433856)
    await intro.set_permissions(ctx.guild.default_role, send_messages=False)
    ...
    

    【讨论】:

    • 对不起,不幸的是,我的解决方案出错了:discord.ext.commands.errors.CommandInvokeError: Command raised an exception: AttributeError: 'NoneType' object has no attribute 'set_permissions' 编辑:从头开始,这是我的错误。现在工作正常。谢谢!
    猜你喜欢
    • 2015-06-24
    • 1970-01-01
    • 2018-09-16
    • 2021-11-25
    • 2020-05-23
    • 2016-09-29
    • 2019-10-31
    • 1970-01-01
    相关资源
    最近更新 更多