خبر و ترفند روز

خبر و ترفند های روز را اینجا بخوانید!

نحوه نصب و پیکربندی PostgreSQL در جنگو

PostgreSQL یکی از بهترین انتخاب ها برای یک محیط ذخیره سازی امن است. یاد بگیرید که چگونه آن را با جنگو ادغام کنید.

افزودن پایگاه داده به برنامه شما یکپارچگی و امنیت داده ها را تضمین می کند. PostgreSQL (Postgres) یک سیستم مدیریت پایگاه داده زبان پرس و جو ساختاریافته (SQL) است که ممکن است بخواهید آن را در نظر بگیرید.

Postgres اکثر سیستم عامل های محبوب را پشتیبانی می کند و با زبان های برنامه نویسی مدرن سازگار است. Postgres همچنین انواع داده ها و اسناد را مدیریت می کند. با داشتن مهارت های SQL در تقاضای بالا، یادگیری پیکربندی و استفاده از PostgreSQL یک مزیت است.

نحوه نصب، پیکربندی و استفاده از Postgres را در برنامه جنگو یاد خواهید گرفت. همچنین عملکرد پایگاه داده را با افزودن، ذخیره و بازیابی داده ها از پایگاه داده آزمایش خواهید کرد.

1. PostgreSQL را روی سیستم خود نصب کنید

دستورالعمل های زیر نحوه نصب Postgres را در سیستم عامل اوبونتو توضیح می دهد. اگر کاربر ویندوز هستید، می توانید این راهنمای گام به گام را برای نصب Postgres در ویندوز دنبال کنید.

قبل از نصب Postgres، بسته های نسخه و وابستگی های آنها را با دستور زیر به روز کنید:

$ sudo apt-get update

بعد، PostgreSQL را با دستور زیر نصب کنید:

$ sudo apt-get install postgresql postgresql-contrib libpq-dev

هنگامی که از شما خواسته شد تا نصب را تأیید کنید، Y را برای Yes فشار دهید.

با استفاده از دستور زیر به سرور متصل شوید:

$ sudo -i -u postgres

و سپس از سرویس گیرنده پایگاه داده برای تعیین نسخه Postgres نصب شده استفاده کنید.

دستور psql –version را اجرا کنید.

postgres@nameofaccount:~$ psql --version

خروجی نسخه Postgres شما را مطابق شکل زیر نشان می دهد:

psql (PostgreSQL) 14.5 (Ubuntu 14.5-0ubuntu0.22.04.1)

با اجرای دستور exit از حساب Postgres خارج شوید.

postgres@nameofaccount:~$ exit

2. یک پایگاه داده ایجاد کنید

شما باید یک پایگاه داده ایجاد کنید که به یک برنامه جنگو متصل شوید. به پوسته Postgres برگردید و دستورات زیر را متوالی اجرا کنید.

sudo -i -u postgres

$ psql

سپس از کلاینت برای ایجاد پایگاه داده روی سرور استفاده کنید.

postgres=# create database new_db;

سرور هنگام ایجاد پایگاه داده عبارت CREATE DATABASE را برمی گرداند. همچنین می توانید با فهرست کردن تمام پایگاه های داده در سیستم با دستور \l بررسی کنید.

postgres=# \l

ساختار PostgreSQL

مانند یک پایگاه داده SQL معمولی، PostgreSQL داده ها را در جداول ذخیره می کند. جداول نشان دهنده اقلام/مدل های مختلف در یک برنامه کاربردی است. جدول ها دارای تعداد ثابتی از ستون ها و ردیف ها هستند.

مطلب مرتبط:   چه چیزی در چارچوب لاراول لایو وایر نسخه 3 وجود دارد؟

هر جدول دارای یک ستون خاص به نام کلید اصلی است، یک شناسه منحصر به فرد برای هر ردیف ذخیره شده در جدول. یک جدول همچنین ممکن است یک کلید خارجی داشته باشد که آن را به کلید اصلی جدول دیگر متصل می کند.

کلیدهای خارجی روابط بین دو جدول را تعریف می کنند.

در مرحله بعد، باید یک برنامه جنگو ایجاد کنید و پایگاه داده را پیوند دهید. اما ابتدا psycopg2 را برای کمک به اتصال برنامه و پایگاه داده نصب کنید.

3. Django and Psycopg2 Library را نصب کنید

برای اتصال Postgres به یک برنامه جنگو، باید کتابخانه psycopg2 را نصب کنید. این یک وابستگی Postgres است که به ارتباط و برقراری ارتباط با جنگو کمک می کند.

دستور زیر را برای نصب psycopg2 و جنگو اجرا کنید:

$ pipenv install psycopg2 Django

تصویر نصب موفق psycopg2 را نشان می دهد

4. یک برنامه جنگو ایجاد کنید

شما باید یک برنامه جنگو ایجاد کنید که از پایگاه داده Postgres استفاده کند. ابتدا پروژه ای به نام myboma برای پشتیبانی از اپلیکیشن ایجاد کنید. پروژه جنگو به طور خودکار وابستگی ها و تنظیمات برنامه مورد نیاز برای اجرای برنامه را ایجاد می کند.

پوشه ای به نام Boma-watch ایجاد کنید و با دستورات زیر به آن بروید:

$ mkdir Boma-watch

$ cd Boma-watch

سپس با دستور زیر یک پروژه جنگو ایجاد کنید:

$ django-admin startproject myboma .

اطمینان حاصل کنید که نقطه پایان را در انتهای دستور اضافه کنید، در غیر این صورت جنگو یک پوشه جدید برای قرار دادن پروژه ایجاد می کند.

سپس یک برنامه جدید به نام boma با دستور زیر ایجاد کنید:

$ django startapp boma

اگر قبلاً با جنگو کار نکرده اید، می توانید با راهنمای مبتدی جنگو شروع کنید. پس از اجرای برنامه در مرورگر برای تایید کارکرد آن، در قسمت بعدی آن را به پایگاه داده متصل خواهید کرد.

مطلب مرتبط:   نحوه ایجاد یک فرم تماس ساده با استفاده از HTML، CSS و جاوا اسکریپت

5. پایگاه داده را به برنامه جنگو متصل کنید

اکنون برنامه جنگو خود را با استفاده از مراحل زیر به پایگاه داده ای که ایجاد کرده اید متصل خواهید کرد:

مرحله 1: تنظیمات پروژه را برای استفاده از Postgres تغییر دهید

برای اتصال برنامه جنگو به Postgres باید تنظیمات پروژه را تغییر دهید. به فایل project settings.py بروید. سپس، تنظیمات DATABASES را تغییر دهید تا تنظیمات Postgres خود را اضافه کنید.

USER و PASSWORD را با نام کاربری و رمز عبور psql خود جایگزین کنید.

#......
DATABASES = {
    'default': {
        'ENGINE':'django.db.backends.postgresql',
        'NAME':'new_db',
        'USER':'morine',
        'PASSWORD':'password',
        }
    }

مرحله 2: منطقه زمانی را به روز کنید

سپس، در فایل settings.py، منطقه زمانی را تنظیم کنید تا مکان شما را نشان دهد. پروژه های جنگو با منطقه زمانی UTC از پیش پیکربندی شده اند.

TIME_ZONE = Africa/Nairobi

مرحله 3: یک مدل ایجاد کنید

یک مدل نمایه در برنامه خود ایجاد کنید. شما از این کلاس مدل برای ایجاد جداول در پایگاه داده برای ذخیره نام برنامه و داده های زیستی استفاده خواهید کرد.

class Profile(models.Model):
   name = models.CharField(max_length=30)
   bio = models.TextField(max_length=100)

   def __str__(self):
       return self.name

مرحله 4: مهاجرت را شروع کنید

برای شروع مهاجرت دستورات زیر را اجرا کنید:

(virtual)$ python manage.py makemigrations boma

(virtual)$ python manage.py migrate

یک مهاجرت موفق به شکل زیر خواهد بود:

تصویر انتقال موفقیت آمیز به پایگاه داده را نشان می دهد

دستور مهاجرت python manager.py برنامه را از تنظیمات INSTALLED_APPS > فایل‌های models.py انتخاب می‌کند و برای هر مدل جدول‌هایی ایجاد می‌کند. شما با موفقیت Postgres را به برنامه خود وصل کردید.

اکنون می توانید دستورات CREATE، READ، UPDATE و DELETE (CRUD) را در برنامه خود آزمایش کنید.

6. دستورات CRUD را در برنامه خود آزمایش کنید

API Python جنگو شما را قادر می سازد تا برخی از عملیات پایگاه داده CRUD را انجام دهید. API توابع را با مدل ها متصل می کند تا به شما امکان دستکاری پایگاه داده را بدهد.

مطلب مرتبط:   OpenAI Gym چیست و چگونه می توان از آن استفاده کرد؟

با استفاده از دستور زیر پوسته پایتون را در پروژه جنگو باز کنید:

(virtual)$ python manage.py shell

این دستور کنسولی را باز می کند که در آن می توانید عملیات CRUD را آزمایش کنید.

عملیات ایجاد کنید

ابتدا مدل Profile را از ماژول models با استفاده از دستور زیر وارد کنید:

 from boma.models import Profile

سپس، یک نمونه از کلاس Profile ایجاد کنید و داده های خود را ارسال کنید.

 prof1 = Profile.objects.create(name ='Ken',bio ='I am a Scorpio')

سپس داده ها را در پایگاه داده ذخیره کنید.

prof1.save()

عملیات را بخوانید

پس از ایجاد داده در پایگاه داده و ذخیره آن، می توانید برای بازیابی داده های ذخیره شده آن را پرس و جو کنید.

از Profile.objects.all() برای بازیابی تمام داده های جدول Profile در پایگاه داده استفاده کنید.

Profile.objects.all() #outputs <QuerySet [Profile: Ken]>

شما همچنین می توانید یک شی واحد را با استفاده از کلید اصلی یا pk بازیابی کنید. اینها اعدادی هستند که به هر آیتم ذخیره شده در پایگاه داده اختصاص داده شده است.

Profile.objects.get(pk = 1) #outputs <Profile: Ken>

عملیات به روز رسانی

با استفاده از دستور زیر می توانید داده های ذخیره شده را به روز کنید:

Profile.objects.filter(id = 1).update(name ='Kim';) #outputs 1

برای بررسی اینکه آیا نام به روز شده است، دستور زیر را اجرا کنید:

Profile.objects.filter(id = 1) #outputs <QuerySet [Profile: Kim]>

عملیات حذف

با استفاده از دستور زیر می توانید موارد ذخیره شده را حذف کنید:

Profile.objects.filter(id = 1).delete() #outputs (1, {app.Profile: 1})

برای تایید حذف دستور زیر را اجرا کنید:

Profile.objects.filter(id = 1) #outputs <QuerySet []>

می توانید ببینید که مجموعه پرس و جو خالی است، که نشان می دهد داده ها دیگر در پایگاه داده نیستند.

چرا از PostgreSQL استفاده کنیم؟

Postgres یکی از پیشرفته ترین پایگاه داده های SQL است. ساختارهای منبع باز آن بهبود عملکرد ثابت را تضمین می کند.

مدیریت حجم کاری آسان تر است و مرتب سازی پایگاه داده با هر نسخه بهتر می شود. یکی از دلایل محبوبیت Postgres این است که با اکثر زبان های برنامه نویسی مدرن و سیستم عامل ها سازگار است.