Refactor subscription fetching logic in toggle_autorenew_handler

- Updated the subscription retrieval process to directly fetch the Subscription model by ID, improving clarity and reducing potential import cycle issues.
- Enhanced code readability by adding a comment to clarify the purpose of the subscription fetch operation.
This commit is contained in:
machka-pasla
2025-09-03 16:32:18 +03:00
parent 38f3b1ad74
commit 0f69823192
+2 -2
View File
@@ -20,6 +20,7 @@ from bot.services.panel_api_service import PanelApiService
from bot.services.referral_service import ReferralService
from bot.middlewares.i18n import JsonI18n
from db.dal import subscription_dal
from db.models import Subscription
router = Router(name="user_subscription_router")
@@ -564,8 +565,7 @@ async def toggle_autorenew_handler(callback: types.CallbackQuery, settings: Sett
pass
return
sub = await session.get(type(subscription_service).__annotations__.get('sub', Subscription), sub_id) # fallback avoids import cycle
# Better: direct DAL fetch
# Fetch subscription by ID directly
sub = await session.get(Subscription, sub_id)
if not sub or sub.user_id != callback.from_user.id:
await callback.answer(get_text("error_try_again"), show_alert=True)