diff --git a/resolvers/follower.py b/resolvers/follower.py index 86df0c86..bb4dde36 100644 --- a/resolvers/follower.py +++ b/resolvers/follower.py @@ -109,6 +109,13 @@ async def follow( ) .first() ) + + # πŸ”§ Π˜Π‘ΠŸΠ ΠΠ’Π›Π•ΠΠ˜Π•: Π˜Π½Π²Π°Π»ΠΈΠ΄ΠΈΡ€ΡƒΠ΅ΠΌ кэш Π”Πž ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ existing_sub, + # Ρ‡Ρ‚ΠΎΠ±Ρ‹ всСгда Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ список подписок (Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΈ ошибкС "already following") + cache_key_pattern = f"author:follows-{entity_type}s:{follower_id}" + await redis.execute("DEL", cache_key_pattern) + logger.debug(f"Π˜Π½Π²Π°Π»ΠΈΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ кэш подписок: {cache_key_pattern}") + if existing_sub: logger.info(f"ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ {follower_id} ΡƒΠΆΠ΅ подписан Π½Π° {what.lower()} с ID {entity_id}") error = "already following" @@ -120,20 +127,10 @@ async def follow( session.commit() logger.info(f"ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ {follower_id} подписался Π½Π° {what.lower()} с ID {entity_id}") - # Π˜Π½Π²Π°Π»ΠΈΠ΄ΠΈΡ€ΡƒΠ΅ΠΌ кэш подписок ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ послС любой ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ - cache_key_pattern = f"author:follows-{entity_type}s:{follower_id}" - await redis.execute("DEL", cache_key_pattern) - logger.debug(f"Π˜Π½Π²Π°Π»ΠΈΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ кэш подписок: {cache_key_pattern}") - if cache_method: logger.debug("ОбновлСниС кэша сущности") await cache_method(entity_dict) - # Π˜Π½Π²Π°Π»ΠΈΠ΄ΠΈΡ€ΡƒΠ΅ΠΌ кэш подписок ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ для обновлСния списка подписок - cache_key_pattern = f"author:follows-{entity_type}s:{follower_id}" - await redis.execute("DEL", cache_key_pattern) - logger.debug(f"Π˜Π½Π²Π°Π»ΠΈΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ кэш подписок: {cache_key_pattern}") - if what == "AUTHOR" and not existing_sub: logger.debug("ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° увСдомлСния Π°Π²Ρ‚ΠΎΡ€Ρƒ ΠΎ подпискС") if isinstance(follower_dict, dict) and isinstance(entity_id, int):