Я пытаюсь предоставить роль всем пользователям на сервере - PullRequest
0 голосов
/ 30 апреля 2020

Первый

    @commands.has_permissions(administrator=True)
    @commands.command(name="addrole")
    async def _addrole(self, ctx):
        for member in ctx.guild.members:
            print(member)

Когда я запустил эту команду, я смог получить всех пользователей на этом сервере.

Второй

Поэтому я попытался использовать соответствующие для оператор

    @commands.has_permissions(administrator=True)
    @commands.command(name="addrole")
    async def _addrole(self, ctx, getrole:discord.Role):
        SearchRole = discord.utils.get(ctx.guild.roles, name=getrole.name)
        for member in ctx.guild.members:
            if SearchRole in member.roles:
                print(f"{member}passsed")
                pass
            else:
                await member.add_roles(SearchRole)
                print(f"{member}added")

Я пытался использовать этот синтаксис

Задача

При выполнении команды только 126 роли было назначено, а роли больше не было.

Я использовал asyncio.sleep, так как это может быть предел запроса, но у меня все еще были проблемы.

Пожалуйста, сообщите о проблеме

...