Dev Perfects
40 subscribers
9.23K photos
1.26K videos
468 files
13K links
بخوام خیلی خلاصه بگم
این کانال میاد مطالب کانالای خفن تو حوزه تکنولوژی و برنامه نویسی رو جمع میکنه

پست پین رو بخونید
https://t.iss.one/dev_perfects/455


ارتباط:
https://t.iss.one/HidenChat_Bot?start=936082426
Download Telegram
💎 استفاده از PostgreSQL با Django 💎

امروز می‌خوایم درباره PostgreSQL و اینکه چرا این دیتابیس رابطه‌ای با Django فوق‌العاده مچ میشه، صحبت کنیم. همچنین چندتا از فیچرهای خاصی که جنگو برای این دیتابیس داره رو معرفی می‌کنیم

چرا PostgreSQL؟ 🤔
خب PostgreSQL یه دیتابیس رابطه‌ای قدرتمنده که خیلی‌ها بهش میگن "Postgres". این دیتابیس اوپن سورس، خیلی خوب با Django هماهنگ میشه و خیلی امکانات و قابلیت‌های پیشرفته‌ای رو ارائه میده که وقتی با جنگو کار می‌کنی حسابی به درد می‌خوره. از جمله پشتیبانی از JSONB، قفل‌های پیچیده، پارتیشن‌بندی داده‌ها و ... 😍

چطوری از PostgreSQL توی Django استفاده کنیم؟ 🛠️

1⃣ اول از همه، باید مطمئن شی که PostgreSQL رو نصب داری.

2⃣ بعدش توی پروژه جنگویی، توی فایل settings.py باید دیتابیس رو به Postgres وصل کنی. یه همچین چیزی:
  
  
   DATABASES = {
       'default': {
           'ENGINE': 'django.db.backends.postgresql',
           'NAME': 'your_db_name',
           'USER': 'your_db_user',
           'PASSWORD': 'your_db_password',
           'HOST': 'localhost',
           'PORT': '5432',
       }
   }
  
حالا می‌تونی از قابلیت‌های خفن Postgres استفاده کنی و دیتابیس پروژه‌ت رو به یه سطح بالاتر ببری! 🚀

فیچرهای خاص Django برای PostgreSQL 📦

1⃣ مدل‌های JSONField 📄 
   با استفاده از Postgres توی Django، می‌تونی از فیلد JSONField استفاده کنی. این فیلد بهت اجازه میده که داده‌های JSON رو به‌راحتی توی دیتابیس ذخیره کنی و بعداً کوئری‌های خفن روشون بزنی! دیگه نیازی نیست همیشه ساختار داده‌ت فقط رابطه‌ای باشه.

  
   from django.db import models
  
   class MyModel(models.Model):
       data = models.JSONField()
  

2⃣ فیلد ArrayField 🔢 
   اگه یه لیست یا آرایه داری و می‌خوای اون رو مستقیم توی دیتابیس ذخیره کنی، ArrayField بهترین انتخابه. با این فیلد، می‌تونی یه لیست از مقادیر (مثلاً یه سری عدد یا استرینگ) رو توی یه ستون ذخیره کنی.

  
   from django.contrib.postgres.fields import ArrayField
   from django.db import models

   class MyModel(models.Model):
       tags = ArrayField(models.CharField(max_length=100), blank=True)
3⃣ فیلد HStore 🗂️ 
خب HStore یه قابلیت خاص توی Postgresه که بهت اجازه میده داده‌های کلید-مقدار (key-value) رو توی دیتابیس ذخیره کنی. Django از این فیلد پشتیبانی می‌کنه و باهاش می‌تونی داده‌هایی شبیه به دیکشنری رو ذخیره کنی.

 
   from django.contrib.postgres.fields import HStoreField
   from django.db import models

   class MyModel(models.Model):
       attributes = HStoreField()
  
4⃣ فیلد Range 📏 
   این فیلد بهت اجازه میده که رِنج‌ها رو توی دیتابیس ذخیره کنی. مثلاً می‌خوای یه بازه تاریخی یا عددی رو نگه‌داری، این فیلد دقیقاً به درد همون کار می‌خوره.

  
   from django.contrib.postgres.fields import DateRangeField
   from django.db import models

   class MyModel(models.Model):
       date_range = DateRangeField()
  
5⃣ و در اخر Full-Text Search 🔍 
خب Postgres قابلیت جستجوی متنی پیشرفته داره و Django هم از این قابلیت پشتیبانی می‌کنه. با استفاده از این فیچر می‌تونی به‌صورت سریع و بهینه توی متن‌ها جستجو کنی.

  
   from django.contrib.postgres.search import SearchVector
   from .models import MyModel

   MyModel.objects.annotate(search=SearchVector('title', 'description')).filter(search='keyword')
  
جمع‌بندی 🎯
استفاده از PostgreSQL توی Django یه انتخاب خیلی خوبه، چون هم دیتابیس قوی‌ایه و هم فیچرهای اختصاصی زیادی برای جنگو داره که می‌تونه کارتو سریع‌تر و راحت‌تر کنه. از ذخیره JSON گرفته تا جستجوی متنی، Postgres و Django یه ترکیب طلایین

امیدوارم مفید بوده باشه :)

#django #postgressql #postgres


@ninja_learn_ir
Forwarded from Linuxor ?
توی حمله DOS مهاجما آدرس مبدا پکت رو عوض میکنن که حملشون به خودشون برنگرده، حالا این عوض کردن اثراتش دامن گیر بقیه میشه که بهش میگن backscatter، و نکته جالب اینجاست از طریق backscatter که روی شبکه به وجود میاد میشه فهمید یه بنده خدایی تحت حمله DOS قرار گرفته.

🐧 @Linuxor
Forwarded from کانال مهرداد لینوکس (Mehrdad Linux)
This media is not supported in your browser
VIEW IN TELEGRAM
اینبار JavaScript روی ژوپیتر لب (Jupyterlab)

میدانیم Jupyterlab یک IDE تعاملی مبتنی بر وب، با امکانات خاص برای اجرای کدهای پایتونی است

🔥نظرتون در مورد اجرای جاوااسکریپت (JavaScript) و TypeScript با Deno APIs روی کرنل Jupyterlab چیه؟ 😎 اینجا

اکستنشن Vscode هم داره
🗓 چطوری ؟
اول Deno را نصب کن
curl -fsSL https://deno.land/install.sh | sh

حالا Jupyter Kernel for Deno را نصب کن
deno jupyter  --install

برای من unstable کار نکرد و همینجوری نصب شد پس حالشو ببرید
حالا Jupyter و کرنل Deno را اجرا کنید بوووم 😍

⁉️ سوالی داشتید در بخش کامنت ها بپرسید 😎
Forwarded from Linuxor ?
اگه نمی‌تونید یه سیستم بزرگ رو پیاده کنید و وسطش هی گیر میکنه و پیش نمیره این پترن ساده رو استفاده کنید.


تایمی که قراره بزارید برای پروژتون رو نصف کنید و نصفش اولش رو شروع کنید با راحت ترین و احتمالا بد ترین ابزار و ماژول های ممکن پروژه رو پیش ببرید، اصلا مهم نیست اون ابزار و ماژوله چقدر بده فقط کار کنه حله.

و توی نیمه دوم تایمتون شروع کنید به Refactoring و اصلاح اون ابزار ها و ماژول های بد با نسخه بهترش، اینطوری دیگه پروژتون همیشه در حال توسعس و احتمال اینکه پیش بره خیلی بالا تره اون پروژه بدی هم که ساختین هم بهش میگن MVP نگران نباشین کم کم درست میشه.


🐧 @Linuxor
Forwarded from Gopher Academy
🔵 عنوان مقاله
Revive 1.4: A Faster, Configurable, Flexible Linter for Go

🟢 خلاصه مقاله:
این مقاله درباره ابزاری به نام "golint"، یک ابزار استاندارد برای تجزیه و تحلیل کد در زبان برنامه‌نویسی Go است که بحثی برای جایگزینی آن با نسخه بهبود یافته‌ای انجام شده است. جایگزین پیشنهادی قصد دارد ساختار، امکان پیکربندی و عملکرد بهتری نسبت به نسخه اصلی ارائه دهد. این ابزار جدید توسط بسیاری از پروژه‌ها و کتابخانه‌های بزرگ Go مورد استفاده قرار گرفته و در مخزنی در GitHub قابل دسترسی است. این تغییر از نسخه اصلی golint به نسخه جدید، بر اساس نیازهای کاربرانی که به دنبال افزایش بازده و قابلیت‌های بیشتر هستند، انجام شده است. این ابزار جدید به کاربران امکان می‌دهد تا با استفاده از گزینه‌های پیکربندی دقیق‌تر، کنترل بیشتری بر تجزیه و تحلیل کد خود داشته باشند.

🟣لینک مقاله:
https://golangweekly.com/link/160160/web


👑 @gopher_academy
بچه‌ها اگه می‌خواید یه مدرک رایگان راجع به Generative AI و LLM Agents از دانشگاه Berkeley بگیرید این دوره‌ای که دارن برگزار می‌کنن رو شرکت کنید. فیلماش ضبط میشه رو یوتیوب می‌ذارن.واسه هر جلسه یه آزمون داره، همه‌رو تموم کنید مدرکش رو میدن بهتون.
https://llmagents-learning.org/f24

@DevTwitter
Forwarded from Python Hints
#برگام

از گلوبالیست احمق‌تر توی دنیا
فقط بسیجی می‌تونه باشه تو ایران

طرف رفته توی پلتفرم X که مال خود Elon musk هست، هشتگ راه انداخته با موضوع blockelon بعد خود خرش رفته پول داده به پلتفرم X که بهش تیک آبی بده.


یاد اون کلیپ افتادم که می‌گفت :
تو خود خری، اصن خر بودن رو از روی تو ساختن.
Forwarded from 🎄 یک برنامه نویس تنبل (Raymond Dev)
🔶 هیچ وقت به یک پلاگین اعتماد ۱۰۰ درصد نداشته باشید !

امروز وردپرس WP Engine رو بلاک کرد ! حالا این WP Engine چی هستش ، همون شرکتی که پلاگین محبوب ACF رو ساخته . خلاصه وردپرس اومده اکانتشونو بسته و کاربرای ACF فعلاً نمیتونن آپدیت بگیرن.

ظاهراً WP Engine اقداماتی رو سرورش کرده که به مذاق وردپرس خوش نیومده و کار اصلی این بوده که اومده یه سری از فانکشن‌های اصلی وردپرس رو از کار انداخته و فانکشن‌های خودشو جاش گذاشته. وردپرس هم تو بلاگش نوشته اجازه تغییر هسته وردپرس رو ندارید و فعلا بلاک هستید .

به همین علت هیچ وقت به یک پلاگین اعتماد ۱۰۰ درصد نداشته باشید چرا که همیشه وابسته به پلاگین هستید و در همچین شرایطی سایتتون به خطر می افتد بهترین راه نوشتن امکاناتی هست که نیاز دارید به وب سایتتون اضافه بشه .

</Mohammad Mahdi>

#وردپرس

@TheRaymondDev
Forwarded from Code Module | کد ماژول (𔓙)
سیستمی قدرتمند به نام Strapi

‏Strapi یک سیستم مدیریت محتوا (CMS) اوپن سورسه که به زبان JavaScript و با استفاده از Node.js توسعه یافته. این سیستم بهتون این امکان رو میده که به سرعت API‌های قدرتمند رو ایجاد، و محتوا رو مدیریت کنید.

برخی از ویژگی‌های برجسته Strapi

📍قابلیت ساخت و مدیریت API‌های REST و GraphQL‏: Strapi به شما اجازه میده تا به راحتی API‌های RESTful و GraphQL بسازید و مدیریت کنید. این امکان به دولوپرا این اجازه رو میده تا داده‌های خودشون رو به شکل دلخواه در اختیار کلاینت‌ها قرار بدن.

📍مدیریت محتوا از طریق داشبورد کاربرپسند: Strapi دارای یک رابط کاربری مدیریت محتوا هست که به شما اجازه میده تا به سادگی مدل‌های داده‌ای خودتون رو تعریف کنید، مدیریت کنید و نقش‌های کاربری و مجوزها رو تنظیم کنید.

📍سفارشی‌سازی بالا و توسعه‌پذیری: به دلیل اینکه Strapi با استفاده از Node.js ساخته شده، شما می‌تونید به راحتی کد پایه اون رو تغییر بدید و با افزودن پلاگین‌ها و توسعه‌های سفارشی، CMS خودتون شخصی‌سازی کنید.

📍پشتیبانی از دیتابیس‌های مختلف: Strapi از چندین دیتابیس مثل SQLite، MySQL، PostgreSQL و MongoDB پشتیبانی می‌کنه. این انعطاف‌پذیری به شما اجازه میده تا با توجه به نیازهای پروژتون، دیتابیس مناسب رو انتخاب کنید.

📍امنیت و احراز هویت: Strapi دارای مکانیزم‌های امنیتی پیشرفته‌ایه که شامل JWT (JSON Web Tokens)، RBAC (Role-Based Access Control) و پشتیبانی از OAuth و Passport.js برای احراز هویت هست.

📍مدیریت فایل: Strapi امکاناتی برای آپلود و مدیریت فایل‌ها و تصاویر داره که می‌تونه اون هارو در منابع مختلف مانند AWS S3، Cloudinary و غیره ذخیره کرد.

در مجموع، Strapi یک ابزار قدرتمند و منعطف برای مدیریت محتوا و ساخت API‌ها هست، که می‌تونه به دولوپرا کمک کنه تا پروژه‌های خودشون رو سریع‌تر و با کیفیت‌تر به پیش ببرن. برای اطلاعات بیشتر میتونید به داکیومنتش مراجعه کنید.

🔗 Document

#strapi
@CodeModule
Forwarded from Meitix
آقا wsl رو ویندوز ۱۱ جوابه؟ کار رو در میاره؟
Forwarded from 🎄 یک برنامه نویس تنبل (  MΞ)
🔸هیچ کودوم از اکانتایی که با این ربات اتومات بصورت ۲۴ساعته و بمدت ۳ماه claim شدن نه بن شدن نه کارت تقلب گرفتن

https://github.com/maanimis/hamsterBOT

@TheRaymondDev
Forwarded from Linuxor ?
همستر کی پول میشه ؟ هیچوقت😂😂



(دیالوگ های موفق همیشه اول به عنوان تمسخر استفاده میشن و بعدا میشن درس عبرت)

🐧 @Linuxor
Forwarded from Codino School (ایمان غفوری)
آلفا دوم میزکار کازمیک عرضه شد.

https://blog.system76.com/post/cosmic-alpha-2-press-release


@SohrabContents
چرا سورس کد بیشتر بد است؟

https://huly.blog/source-code-is-poison

این مطلب نگاه خیلی جالبی به سورس کد داره. میگه خیلی اوقات ما پاداش میگیریم چون کد جدید نوشتیم ولی کد یه بدهی و سمه. مقدار کمش می‌تونه به فیچر منجر بشه ولی زیاد که میشه مثل سم باعث میشه توسعه جلو نره و نیروی بیشتری نیاز داشته باشه و ...
Forwarded from Gopher Academy
😱اینم یه چک لیست امنیتی برای api که توسعه میدید
گزینه خوبیه

https://roadmap.sh/best-practices/api-security


👑 @gopher_academy
Forwarded from Meitix
Go part1.pdf
83.1 KB
یادداشتهای امروز go