mirror of
https://github.com/Rapptz/discord.py.git
synced 2025-04-21 00:07:51 +00:00
Implement Guild.fetch_roles
This commit is contained in:
parent
851f83c821
commit
5698cf6df9
@ -1521,6 +1521,30 @@ class Guild(Hashable):
|
||||
data = await self._state.http.create_custom_emoji(self.id, name, img, roles=roles, reason=reason)
|
||||
return self._state.store_emoji(self, data)
|
||||
|
||||
async def fetch_roles(self):
|
||||
"""|coro|
|
||||
|
||||
Retrieves all :class:`Role` that the guild has.
|
||||
|
||||
.. note::
|
||||
|
||||
This method is an API call. For general usage, consider :attr:`roles` instead.
|
||||
|
||||
.. versionadded:: 1.3.0
|
||||
|
||||
Raises
|
||||
-------
|
||||
HTTPException
|
||||
Retrieving the roles failed.
|
||||
|
||||
Returns
|
||||
-------
|
||||
List[:class:`Role`]
|
||||
All roles in the guild.
|
||||
"""
|
||||
data = await self._state.http.get_roles(self.id)
|
||||
return [Role(guild=self, state=self._state, data=d) for d in data]
|
||||
|
||||
async def create_role(self, *, reason=None, **fields):
|
||||
"""|coro|
|
||||
|
||||
|
@ -722,6 +722,9 @@ class HTTPClient:
|
||||
|
||||
# Role management
|
||||
|
||||
def get_roles(self, guild_id):
|
||||
return self.request(Route('GET', '/guilds/{guild_id}/roles', guild_id=guild_id))
|
||||
|
||||
def edit_role(self, guild_id, role_id, *, reason=None, **fields):
|
||||
r = Route('PATCH', '/guilds/{guild_id}/roles/{role_id}', guild_id=guild_id, role_id=role_id)
|
||||
valid_keys = ('name', 'permissions', 'color', 'hoist', 'mentionable')
|
||||
|
Loading…
x
Reference in New Issue
Block a user