✅ بهبود خوانایی و "تمیزی" کد با کمک Object & QuerySet Managers در Django
با استفاده از این روش ها می تونیم از چاق شدن viewها جلوگیری کنیم.
✔️ تشکر از مهندس عموزاده
https://www.linkedin.com/pulse/%D8%A8%D9%87%D8%A8%D9%88%D8%AF-%D8%AE%D9%88%D8%A7%D9%86%D8%A7%DB%8C%DB%8C-%D9%88-%D8%AA%D9%85%DB%8C%D8%B2%DB%8C-%DA%A9%D8%AF-%D8%A8%D8%A7-%DA%A9%D9%85%DA%A9-object-queryset-%D8%AF%D8%B1-django-amouzadeh
با استفاده از این روش ها می تونیم از چاق شدن viewها جلوگیری کنیم.
✔️ تشکر از مهندس عموزاده
https://www.linkedin.com/pulse/%D8%A8%D9%87%D8%A8%D9%88%D8%AF-%D8%AE%D9%88%D8%A7%D9%86%D8%A7%DB%8C%DB%8C-%D9%88-%D8%AA%D9%85%DB%8C%D8%B2%DB%8C-%DA%A9%D8%AF-%D8%A8%D8%A7-%DA%A9%D9%85%DA%A9-object-queryset-%D8%AF%D8%B1-django-amouzadeh
Linkedin
بهبود خوانایی و "تمیزی" کد با کمک Object & QuerySet Managers در Django
از فعالیت های روزمره توسعه همه ما کار با دیتابیس هاست، خصوصا #ORM ، فرض کنید داریم روی یک داشبرد کار میکنیم که وظیفه اش نمایش کارهای به اصطلاح "در جریان" یک کاربر است. اینجا تعریف باز بودن مفهومیه که در #Business Context یا زمینه بیزنس پروژه معنی داره و ممکنه…
👍1
Forwarded from 🐍 Python & Raspberry 🐍 (DailyProjects)
✔️ شاید با شنیدن کلمهی ORM همهمون یاد SQLAlchamy یا Django ORM بیوفتیم، باشه اینا خیلی خوبن ولی لایبرریهای جدیدی که نوشته میشن دارن از تمام language featureهای نایس عه پایتون ۳ خصوصا 3.6 به بعد (Type Hints, F strings and async/await)
با قدرت استفاده میکنن و زیبایی خلق میکنن.
پیکولو، یکی از همین کتابخونههاست.
نویسندهی پیکولو چون از اوایل روزهای کاریش غرق در دنیای async بوده این ORM رو به صورت async first مینویسه :))
ولی میشه ازش به صورت sync هم استفاده کرد.
✔️ از دیگر ویژگیهاش
• A builtin playground, which makes learning a breeze.
• Tab completion support - works great with iPython and VSCode.
• Batteries included - a User model, authentication, migrations, an admin GUI, and more.
• Modern Python - fully type annotated.
• Make your codebase modular and scalable with Piccolo apps (similar to Django apps) 👌
میتونید ازش به عنوان یه کوئری بیلدر استفاده کنید:
# Select:
await Band.select(
Band.name
).where(
Band.popularity > 100
)
یا مثل یه ORM عادی باهاش رفتار کنید:
# To fetch an object from the database, and update it:
b = await Band.objects().get(Band.name == 'Pythonistas')
b.popularity = 10000
await b.save()
✔️ این ORM بهترین عملکرد رو با postgresql داره ولی از sqlite هم پشتیبانی میکنه و همچنین قسمت زیبای ماجرا اینه که از:
Starlette, FastAPI, BlackSheep, Xpresso and Starlite are currently supported.
هم برای ساختن web app های نایس پشتیبانی میکنه :))
🐙 https://github.com/piccolo-orm/piccolo
#m4hdi
#ORM
#library
#async
〰〰〰〰〰〰
©raspberry_python
دنبال کردن هشتگ m4hdi
دنبال کردن هشتگ orm
دنبال کردن هشتگ library
دنبال کردن هشتگ async
با قدرت استفاده میکنن و زیبایی خلق میکنن.
پیکولو، یکی از همین کتابخونههاست.
نویسندهی پیکولو چون از اوایل روزهای کاریش غرق در دنیای async بوده این ORM رو به صورت async first مینویسه :))
ولی میشه ازش به صورت sync هم استفاده کرد.
✔️ از دیگر ویژگیهاش
• A builtin playground, which makes learning a breeze.
• Tab completion support - works great with iPython and VSCode.
• Batteries included - a User model, authentication, migrations, an admin GUI, and more.
• Modern Python - fully type annotated.
• Make your codebase modular and scalable with Piccolo apps (similar to Django apps) 👌
میتونید ازش به عنوان یه کوئری بیلدر استفاده کنید:
# Select:
await Band.select(
Band.name
).where(
Band.popularity > 100
)
یا مثل یه ORM عادی باهاش رفتار کنید:
# To fetch an object from the database, and update it:
b = await Band.objects().get(Band.name == 'Pythonistas')
b.popularity = 10000
await b.save()
✔️ این ORM بهترین عملکرد رو با postgresql داره ولی از sqlite هم پشتیبانی میکنه و همچنین قسمت زیبای ماجرا اینه که از:
Starlette, FastAPI, BlackSheep, Xpresso and Starlite are currently supported.
هم برای ساختن web app های نایس پشتیبانی میکنه :))
🐙 https://github.com/piccolo-orm/piccolo
#m4hdi
#ORM
#library
#async
〰〰〰〰〰〰
©raspberry_python
دنبال کردن هشتگ m4hdi
دنبال کردن هشتگ orm
دنبال کردن هشتگ library
دنبال کردن هشتگ async
GitHub
GitHub - piccolo-orm/piccolo: A fast, user friendly ORM and query builder which supports asyncio.
A fast, user friendly ORM and query builder which supports asyncio. - piccolo-orm/piccolo
🔥9👍2