Telegram Group & Telegram Channel
Forwarded from Python Hints
جنگولرن
Photo
داشتم یک کدی رو امروز روش کار میکردم؛ که یک سری کانفیگ از یوزر میگیره اما اگر وجود نداشت یک سری دیفالت رو بجاش استفاده می‌کنه و تمام این تنظیمات dictionary هستند.

مشکل بعدیش این بود که تنظیمات دیفالت هم خودش توسط یگ یوزر دیگه تعریف میشه و لزوما تنظیمات صفر ابزار ما نیست.

بطور خلاصه ما یک dict داریم که خودش یک سری تنظیمات داره؛ ولی ممکنه یک بخش‌هایی رو یک نفر بخواد تغییر بده پس باید overwrite بشه! ولی اجازه overwrite نداریم چون ممکنه کاربر نهایی تنظیماتش رو بخواد reset کنه ولی این وسط ممکنه تنظیمات از طریق مشتری‌های میانی به دست کاربر نهایی رسیده باشه و مشتری میانی نخواد کاربر رو مستقیم به ما وصل کنه (مطمئن باشه ما دورش نمیزنیم ولی خودش هم برنامه‌نویس نیست که سایت و ابزار‌های خودش رو توسعه بده)

خلاصه که ممکنه چیزی که نهایتا به مشتری آخر میرسه اینطوری باشه :
default -> default -> default -> ....... -> default
و بعد مشتری نهایی سیستم اون رو برای خودش شخصی‌سازی کنه.

کلی راهکار پیشنهاد شد؛ یکباره یاد ChainMap توی پایتون افتادم اول رفتم یک تست گرفتم مطمئن بشم به محدودیت‌های بیزینس نمیخوریم بعد کد رو دادیم رفت بالا (شد بهترین راهکار) چون خودم اصلا یادم نبود که ChainMap همچین کاربردی داشته باشم گفتم با شما هم به اشتراک بذارم.

اگر یکی از مقادیر توسط مشتری‌ها تعریف نشده باشه؛ در اونصورت از دیکشنری default خونده میشه.



tg-me.com/djangolearn_ir/1062
Create:
Last Update:

داشتم یک کدی رو امروز روش کار میکردم؛ که یک سری کانفیگ از یوزر میگیره اما اگر وجود نداشت یک سری دیفالت رو بجاش استفاده می‌کنه و تمام این تنظیمات dictionary هستند.

مشکل بعدیش این بود که تنظیمات دیفالت هم خودش توسط یگ یوزر دیگه تعریف میشه و لزوما تنظیمات صفر ابزار ما نیست.

بطور خلاصه ما یک dict داریم که خودش یک سری تنظیمات داره؛ ولی ممکنه یک بخش‌هایی رو یک نفر بخواد تغییر بده پس باید overwrite بشه! ولی اجازه overwrite نداریم چون ممکنه کاربر نهایی تنظیماتش رو بخواد reset کنه ولی این وسط ممکنه تنظیمات از طریق مشتری‌های میانی به دست کاربر نهایی رسیده باشه و مشتری میانی نخواد کاربر رو مستقیم به ما وصل کنه (مطمئن باشه ما دورش نمیزنیم ولی خودش هم برنامه‌نویس نیست که سایت و ابزار‌های خودش رو توسعه بده)

خلاصه که ممکنه چیزی که نهایتا به مشتری آخر میرسه اینطوری باشه :
default -> default -> default -> ....... -> default
و بعد مشتری نهایی سیستم اون رو برای خودش شخصی‌سازی کنه.

کلی راهکار پیشنهاد شد؛ یکباره یاد ChainMap توی پایتون افتادم اول رفتم یک تست گرفتم مطمئن بشم به محدودیت‌های بیزینس نمیخوریم بعد کد رو دادیم رفت بالا (شد بهترین راهکار) چون خودم اصلا یادم نبود که ChainMap همچین کاربردی داشته باشم گفتم با شما هم به اشتراک بذارم.

اگر یکی از مقادیر توسط مشتری‌ها تعریف نشده باشه؛ در اونصورت از دیکشنری default خونده میشه.

BY جنگولرن




Share with your friend now:
tg-me.com/djangolearn_ir/1062

View MORE
Open in Telegram


telegram Telegram | DID YOU KNOW?

Date: |

Launched in 2013, Telegram allows users to broadcast messages to a following via “channels”, or create public and private groups that are simple for others to access. Users can also send and receive large data files, including text and zip files, directly via the app.The platform said it has more than 500m active users, and topped 1bn downloads in August, according to data from SensorTower.

Telegram is riding high, adding tens of million of users this year. Now the bill is coming due.Telegram is one of the few significant social-media challengers to Facebook Inc., FB -1.90% on a trajectory toward one billion users active each month by the end of 2022, up from roughly 550 million today.

telegram from ar


Telegram جنگولرن
FROM USA