Предоставление роли на основе идентификатора роли - PullRequest
0 голосов
/ 18 мая 2019

Я пытаюсь назначить роли на основе идентификатора роли пользователям в гильдии, когда они присоединяются, однако, похоже, не может заставить их выдавать, когда я предоставляю идентификатор роли, и могу, когда я предоставляю имя роли.

Я пробовал оба

@Nao.event
async def on_member_join(member):
    database = mysql.connector.connect(
        host='localhost',
        user='root',
        passwd='',
        database='Nao'
    )
    cursor = database.cursor()
    query = "SELECT role FROM autorole WHERE server = %s"
    values = (member.guild.id,)
    cursor.execute(query, values)
    result = cursor.fetchall()
    for role in result:
        role = discord.utils.get(member.guild.roles, name='Members')
        await member.add_roles(role)

Который работает и

@Nao.event
async def on_member_join(member):
    database = mysql.connector.connect(
        host='localhost',
        user='root',
        passwd='',
        database='Nao'
    )
    cursor = database.cursor()
    query = "SELECT role FROM autorole WHERE server = %s"
    values = (member.guild.id,)
    cursor.execute(query, values)
    result = cursor.fetchall()
    for role in result:
        role = discord.utils.get(member.guild.roles, id=role[0])
        await member.add_roles(role)

, который не работает и выдает ошибку;

await req (guild_id, user_id, role.id, причина = причина) AttributeError: у объекта 'NoneType' нет атрибута 'id'

...