tgoop.com/pyHints/459
Last Update:
توی پست قبلی زیر sample.env
خروجی دستور tree
رو هم گذاشتم (نباید اینجا باشه) فقط گفتم شاید توی مثالهای بعدی لازم شد.
اما مهمترین فایل این مثال config.py
هست.
راجب lru_cache
قبلا صحبت کردیم؛ اما بطور خلاصه بخوام یادآوری کنم.
اگر یک تابع در طول پروژه مقدار هربار که صدا زده میشه مقدار ثابتی رو بر میگردونه اون رو با lru_cache
دکوریت میکنیم تا هربار سربار برای فراخونی و پردازش ندیم و بعد از یکبار پردازش خروجی ذخیره بشه و برگرده ( سرعت بیشتر؛ سربار کمتر)
خط ۶ تا ۱۱ :
من از Config
بجای Setting
استفاده میکنم که با کلاسای Pydantic
اشتباه نشه؛ وظیفه BaseConfig
رو معمولا برای پیدا کردن .env
و تنظیم ENV_STATE
تعریف میکنم.
تنها نکته مهم اینه که extra="ignore"
r رو میذارم که اگر کلید اضافی هم توی .env
داشتم pydantic
اونارو ignore
کنه و ارور نده.
ازینجا به بعد همه تنظیماتم رو بر اساس BaseConfig
انجام خواهم داد؛ چون کد من کوچیک هست دیگه بخش دیتابیس و ردیس و ... رو جدا نکردم و همه چیز رو میخوام در نهایت داخل settings
تحویل یوزر بدم.from config import settings
ادامه پست بعدی.
BY Python Hints


Share with your friend now:
tgoop.com/pyHints/459