10
Сен
2021

Мне нужно достать id роли которую я создал по команде для клана и сразу же засунуть и в переменную для базы данных, но я не знаю как получить id роли

async def clan_create(ctx, arg):
    await ctx.channel.purge(limit=1)
    # -Starting create clan role snd variables for clans-
    message = Embed(description='Идет подготовка к созданию клана')
    msg = await ctx.send(embed=message)
    guild = ctx.guild
    member = ctx.author
    overwrite = discord.PermissionOverwrite(read_messages=True, send_messages=True)
    role = await guild.create_role(name=f"{arg}")
    new_message = discord.Embed(description=f'Роль клана {arg} успешно создана')
    await msg.edit(embed=new_message)
    overwrites = None
    categorytext = client.get_channel(885665936311476254)
    categoryvoice = client.get_channel(885629335338360932)
    clansrole = discord.utils.get(ctx.message.guild.roles, name=arg)
    clanroleid = discord.utils.get(ctx.guild.roles, name=arg)
    print(clanroleid)
    channel = await guild.create_voice_channel(f'{arg}', overwrites=overwrites, category=categoryvoice )
    new_message1 = Embed(description=f'Голосовой канал {arg} создан')
    await channel.set_permissions(member, overwrite=overwrite)
    await channel.set_permissions(clansrole, overwrite=overwrite)
    await msg.edit(embed=new_message1)
    channel = await guild.create_text_channel(f'{arg}', overwrites=overwrites, category=categorytext )
    new_message2 = Embed(description=f"Текстовый канал {arg} создан")
    await channel.set_permissions(member, overwrite=overwrite)
    await channel.set_permissions(clansrole, overwrite=overwrite)
    await msg.edit(embed=new_message2)
    new_message3 = Embed(description=f"Клан {arg} успешно создан")
    await msg.edit(embed=new_message3)
    await member.add_roles(clansrole)
    print('Создался клан', clansrole)
    randomnum = '1', '2', '3', '4', '5', '6', '7', '8', '9', '0'
    ls = list(randomnum)
    random.shuffle(ls)
    clanid = ''.join([random.choice(randomnum) for x in range(2)])
    print("clan id:", clanid)
    #clanuser = cur.execute(f'INSERT INTO DiscorClans VALUES (?, ?, ?, ?, ?)',(clanid, arg, здесь должна быть переменная с id роли клана))```

Источник: https://ru.stackoverflow.com/questions/1327332/%D0%9C%D0%BD%D0%B5-%D0%BD%D1%83%D0%B6%D0%BD%D0%BE-%D0%B4%D0%BE%D1%81%D1%82%D0%B0%D1%82%D1%8C-id-%D1%80%D0%BE%D0%BB%D0%B8-%D0%BA%D0%BE%D1%82%D0%BE%D1%80%D1%83%D1%8E-%D1%8F-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BB-%D0%BF%D0%BE-%D0%BA%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4%D0%B5-%D0%B4%D0%BB%D1%8F-%D0%BA%D0%BB%D0%B0%D0%BD%D0%B0-%D0%B8-%D1%81%D1%80%D0%B0%D0%B7%D1%83-%D0%B6%D0%B5-%D0%B7%D0%B0%D1%81%D1%83%D0%BD

Тебе может это понравится...

Добавить комментарий