From 53292dad15a78a59c4dc49c0cad003982d16c05d Mon Sep 17 00:00:00 2001 From: Alex Root Junior Date: Fri, 4 Aug 2017 16:57:42 +0300 Subject: [PATCH] Add docs for storages. --- aiogram/contrib/fsm_storage/redis.py | 9 +++++---- docs/source/contrib/contrib.rst | 5 +++++ docs/source/contrib/storages.rst | 18 ++++++++++++++++++ docs/source/features.rst | 5 ++--- 4 files changed, 30 insertions(+), 7 deletions(-) create mode 100644 docs/source/contrib/contrib.rst create mode 100644 docs/source/contrib/storages.rst diff --git a/aiogram/contrib/fsm_storage/redis.py b/aiogram/contrib/fsm_storage/redis.py index f980e9c0..43b63832 100644 --- a/aiogram/contrib/fsm_storage/redis.py +++ b/aiogram/contrib/fsm_storage/redis.py @@ -41,7 +41,6 @@ class RedisStorage(BaseStorage): Get Redis connection This property is awaitable. - :return: """ if self._redis is None: self._redis = await aioredis.create_connection((self._host, self._port), @@ -50,7 +49,9 @@ class RedisStorage(BaseStorage): **self._kwargs) return self._redis - async def get_record(self, *, chat: typing.Union[str, int, None] = None, user: typing.Union[str, int, None] = None): + async def get_record(self, *, + chat: typing.Union[str, int, None] = None, + user: typing.Union[str, int, None] = None) -> typing.Dict: """ Get record from storage @@ -61,8 +62,8 @@ class RedisStorage(BaseStorage): chat, user = self.check_address(chat=chat, user=user) addr = f"{chat}:{user}" - redis = await self.redis - data = await redis.execute('GET', addr) + conn = await self.redis + data = await conn.execute('GET', addr) if data is None: return {'state': None, 'data': {}} return json.loads(data) diff --git a/docs/source/contrib/contrib.rst b/docs/source/contrib/contrib.rst new file mode 100644 index 00000000..9157db4d --- /dev/null +++ b/docs/source/contrib/contrib.rst @@ -0,0 +1,5 @@ +Contrib +======= + +.. toctree:: + storages diff --git a/docs/source/contrib/storages.rst b/docs/source/contrib/storages.rst new file mode 100644 index 00000000..6d6c8508 --- /dev/null +++ b/docs/source/contrib/storages.rst @@ -0,0 +1,18 @@ +Storages for FSM +================ + +You can create you own storage by extending :class:`aiogram.dispatcher.storage.BaseStorage` or use default storages: + +Simple in-memory storage +------------------------ + +.. automodule:: aiogram.contrib.fsm_storage.memory + :members: + :show-inheritance: + +Redis storage +------------- + +.. automodule:: aiogram.contrib.fsm_storage.redis + :members: + :show-inheritance: diff --git a/docs/source/features.rst b/docs/source/features.rst index 37a76cd1..19a8b82c 100644 --- a/docs/source/features.rst +++ b/docs/source/features.rst @@ -1,6 +1,5 @@ Features ======== -Markdown --------- - +.. toctree:: + contrib/contrib