جنگولرن
3.82K subscribers
287 photos
74 videos
31 files
557 links
آموزش Django و بستگان
Download Telegram
Forwarded from Django Expert (Hêmn Hosseinpana)
پیکربندی لاگ زدن در جنگو - django logging

در این سری از ویدیوها که به ترفندها و نکته های جنگو میپردازیم، به سراغ لاگ زدن در جنگو رفتیم و کانفیگ ها و شیوه پیکربندی آن را از طریق بررسی و خواندن کد داخلی جنگو، شرح دادیم. در این ویدیو به جای کد نوشتن، بیشتر کد خوندیم که بفهمیم جنگو خودش برای لاگ زدن چگونه کار میکند و ما چگونه میتونیم از آن استفاده کنیم. همچنین امکان django logging را در سرویس های کلودی مانند sentry و APM هم مطرح کردیم. این مفاهیم رو در پروژه مینی ترلو به شکل عملی استفاده میکنیم.


video link: https://youtu.be/LGatKmpL7k8

playlist: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBwdrfdaoOqbYev3_ocuBOfv

#django #logging #microfrontend_ir
〰️〰️〰️〰️〰️
©️ @DjangoEx
سلام به همه
ان شاالله جمعه این هفته جلسه هفتم ویوهای کلاس بیس جنگو برگزار میشه.
تاریخ 5 آذر 1400 جمعه ساعت 10 صبح (البته شاید ساعت رو تغییر بدیم، شاااااااید)
قراره یکی از دوستان از کتاب Django Design Patterns and Best Practices در مورد دیزاین پترن ها صحبت کنن.
هفتمین جلسه رایگان اسکایپی جنگو
توی این جلسه با کتاب دیزاین پترن های جنگو شروع کردیم. امید مطالب رو توضیح داد.
در این قسمت در مورد نرمال سازی مدل ها و ارث بری و استفاده از میکسین ها برای کم کردن کد نویسی و رعایت اصل DRY و... توضیحاتی ارائه شد

لینک آپارات:
https://www.aparat.com/v/0yktx/

لینک یوتیوب:
https://youtu.be/35OPj2iT-84
Forwarded from Django Expert (Hêmn Hosseinpana)
دیزاین پترن ها - دیاگرام کلاس Design Patterns رو چطوری بخونیم؟

در دومین ویدیو از پلی لیست الگوهای طراحی و دیزاین پترن ها به معرفی کلاس دیاگرام UML به عنوان زبان مشترک برنامه نویسان برای توصیف سیستم های شی گرا پرداختیم. نخستین گام یادگیری Design Pattern های شی گرا درک ادبیات مشترک برنامه نویسان شی گراست. ابتدا شیوه طراحی کلاس و عضو های آن به همراه سطوح دسترسی ها را شرح دادیم. در ادامه انواع روابط بین کلاس ها شامل Dependency – Association – Aggregation Composition – inheritance را با ذکر مثال توضیح دادیم. سپس مفاهیم abstraction و interface را تشریح کردیم و تفاوت abstract class و interface را مطرح کردیم.


Link: https://youtu.be/s-lJfW5YABQ

playlist: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBxUIWhfp9euGlbBIrQUhm2Q

#منهای‌جنگو

〰️〰️〰️〰️〰️〰️
©@DjangoEx
Forwarded from Back-End Study Group
جلسات مطالعه گروهی
کتاب: Monolith to Microservices
زمان: جمعه ها ساعت ۹ تا ۱۰:۳۰ شب
لینک میتینگ:
https://meet.google.com/tcz-dxse-duq
سبک مطالعه:
مشارکت همگی و بحث و سوال و تبادل نظر همراه پیشروی از کتاب
👍1
Forwarded from Django Expert (Mohammad Babazadeh)
✔️ معماری مایکروسرویس چیست؟
به همراه ۷ معیار مایکروسرویس های خوب

در این ویدئو در رابطه با معماری مایکروسرویس ها و مواردی که منجر به طراحی خوب مایکروسرویس ها میشوند صحبت میکنیم، مواردی نظیر:
1. Independent Deployment
2. Business Domain
3. State, Encapsulation, Data Hiding
4. Low Coupling & High Cohesion
5. Size
6. Scalability
7. Bulkhead Pattern

🖥 مشاهده در یوتوب
👉 Link: https://youtu.be/WUDS9l8aydE

#Microservices #Architecture #میکروسرویس #bobycloud
〰️〰️〰️〰️〰️〰️
©@DjangoEx | @AI_Python | @BobyDotCloud
بعضی پترن هایی که حضرت Fowler معرفی کرده و جنگو داره ازشون استفاده میکنه.
معرفی منابع یادگیری جنگو
توی این ویدئو چند تا دوره خارجی و ایرانی رو معرفی کردم
همچنین چندتا کتاب مفید و گروه مفید هم معرفی کردم
در مورد کنفرانس های جنگو هم مطالبی گفتم
نکاتی هم در مورد دیدن ویدئوها ارائه کردم
البته یکم تبلیغیه وگرنه خیلی از دوستان رو باید معرفی میکردم 😊
✔️ لینک آپارت:
https://www.aparat.com/v/qxCze

✔️ لینک یوتیوب:
https://youtu.be/jn9B59M4x3c
🥰1
زیاد خودتون رو درگیر آخرین ورژن جنگو و نسخه جدید اومد و ... نکنید.
همونطوری که می بینید. نسخه 2.2 LTS تا April 2022 پشتیبانی میشه.
نسخه 4.2 LTS تازه April 2023 منتشر میشه.
لکن تمرکز کنید روی پول در آوردن با جنگو 😁
👍1
نکته از کتاب جنگو دیزاین پترن درباره اپ های جنگو



Ideally, each app must be reusable and loosely coupled to others. You can create as many apps as you need. Never be afraid to add more apps or refactor the existing ones into multiple apps. A typical Django project contains 15-20 apps.
و من الله التوفیق
👍1
شما برای ساختن محیط ایزوله از کدوم استفاده میکنید؟
virtualenv or python -m venv or pipenv
لینک زیر رو بخونید. هر کسی دلیل خودش رو گفته. من خودم از python -m venv استفاده میکنم.
https://stackoverflow.com/questions/41573587/what-is-the-difference-between-venv-pyvenv-pyenv-virtualenv-virtualenvwrappe
پترن یا متدولوژی ۱۲ فاکتور چیه؟
The Twelve Factors

توی لینک زیر آقای محمد قدسیان این ۱۲ اصل رو خیلی ساده و قشنگ توضیح دادن.
از گیت هاب https://github.com/arocks و ریپو edge به این ۱۲ اصل رسیدم.

لینک مقاله فارسی در ویرگول:
https://virgool.io/@mohammad.ghodsian/twelve-factor-app-methodology-blw5cti9tkem
Forwarded from Django Expert (Mohammad Babazadeh)
✔️ معماری مونولیتیک چیست؟

بررسی ۳ الگوی طراحی رایج در معماری های یکپارچه نرم افزار:
1. Single Monolithic
2. Modular Monolithic
3. Layered Monolithic
پیشنهاد میکنم این ویدئو رو حتما ببینید چون به درک بهتری از معماری ماژولار و لایه بندی شده فریمورک Django میرسید.

🖥 مشاهده در یوتوب
👉 Link: https://youtu.be/QnBZnW3qzwk

#monolithic #software_architecture #bobycloud
〰️〰️〰️〰️〰️〰️
©@DjangoEx | @AI_Python | @BobyDotCloud
This media is not supported in your browser
VIEW IN TELEGRAM
تلفظ درست جنگو - از لینکدین علی خلف نژاد
👍1
The Power of Django ORM
مقاله ای در مورد جنگو از صدرا یحیی پور
در مورد Django ORM

- What is ORM
- Use Exceptions in get()
- Django connection
- Iterators
- Set The Timeout
- ORM Best Tricks
-- F() Function
-- Aggregations
-- len() or count()
-- bulk() For Ever

لینک:
https://imsadra.me/the-power-of-django-orm
👍3
مطلبی از دانیال کیماسی، مهندس نرم افزار از کوئرا - Django و Nextjs

ما توی کوئرا حدود یک سالی هست که از Nextjs استفاده می‌کنیم. از همون ابتدا برای integration بین Django و Next.js پکیجی رو توسعه دادیم که به تازگی داخل گیت‌هاب منتشر کردیم.
داخل این مقاله شیوه انجام این کار رو توضیح دادم و همینطور یه راهنمایی اولیه برای استفاده از این پکیج قرار داده شده.

لینک مقاله در Medium:
https://medium.com/@danialkeimasi/django-next-js-the-easy-way-655efb6d28e1

لینک ریپو گیت‌هاب:
https://github.com/QueraTeam/django-nextjs
سال 1401 رو با مطلبی در مورد django migrations شروع کنیم.
فرض کنید 2 برنامه نویس علی و رضا همزمان روی یک یا چند مدل دارن تغییرات میدن و هر کدوم مایگریشن های خودشون رو میسازن و روی دیتابیس لوکال مایگریت می کنن. بعد از تکمیل کارشون همه چی رو commit و push میکنن.
حالا ممکنه وقتی میخواهیم روی سرور مایگریت کنیم خطای Conflicting migrations detected رو ببینم. دلیلش هم مشخصه.
راهکار شما اینجا چیه؟
- بعضی ها کلا فولدر migrations رو ignore میکنن. (در این صورت اگه data migration داشته باشیم به فنا میره)
- بعضی ها توی تغییرات دیتابیسی سخت گیری میکنن و برنامه نویس اجازه نداره بدون هماهنگی تغییری در مدل ها اعمال کنه. (البته اگه قبل از کدنویسی تحلیل درستی داشته باشیم تغییرات حین توسعه به حداقل میرسه)
- بعضی ها هم تغییرات دیتابیس رو دستی روی سرور اعمال میکنن. (یکم مطمئن نیست و ممکنه باعث خطا بشه)

اما جنگو توی داکیومنت ها صراحتا گفته که مایگریشن ها جزئی از کدبیس هستن. پس نباید ignore کنیم.
جنگو کامند -merge رو برای مشکل conflict داره که می تونیم ازش استفاده کنیم.
مقاله زیر رو بخونید، در این مورد توضیح داده:
https://www.algotech.solutions/blog/python/django-migrations-and-how-to-manage-conflicts/
تفاوت OpenAPI و Swagger چیست؟
اگه تا حالا از swagger برای مستندسازی API هاتون استفاده کرده باشید. قطعا OpenAPI هم کنارش به چشمتون خورده.
خیلی خودمونی و نادقیق بخوام بگم. OpenAPI یه استاندارد برای توصیف API هست و Swagger مجموعه ابزارهایی هست که از OpenApi استفاده میکنه و بصری سازی و... میکنه.
OpenAPI = Specification
Swagger = Tools for implementing the specification

این یعنی ما میتونیم به جای swagger از ابزارهای دیگه ای هم استفاده کنیم. مثل redoc یا حتی خودمون ابزاری شبیه به اینا بسازیم.

جزییات بیشتر رو از لینک زیر بخونید:
https://swagger.io/blog/api-strategy/difference-between-swagger-and-openapi/
👍4
Forwarded from Django Expert (Sadra)
متد setUp و tearDown در یونیت تستینگ پایتون!

در این پست سعی کردم یه نگاه به این قضیه داشته باشیم و ببینیم چطور میشه با استفاده از این دو متد، خوانایی تست ها رو یه لول بالاتر ببریم و DRY رو رعایت کنیم. تا اینجا اومدیم.. یه سر هم میزنیم به جنگو. اینکه جنگو درواقع چطور از این مکانیزم واسه ایجاد یک دیتابیس کش در کلاس TestCase خودش استفاده میکنه و یه محیط ایزوله برای اجرای تست ها میسازه!

اگه پست رو مفید دیدید، حتما به اشتراک بذارید. :)❤️

https://imsadra.me/setup-and-teardown-in-python-unit-testing

〰️〰️〰️〰️〰️〰️
©@DjangoEx
👍4👎1