اتصال دیتابیس postgresql به جنگو

اتصال دیتابیس  postgresql به جنگو

یکی از سوالات رایج که ممکن است برای خیلی از برنامه نویسان جنگو پیش بیاید این است که چگونه میشود دیتابیس پیشفرض جنگو را به پستگرس (postgresql) تغییر داد قبل از اینکه وارد این آموزش بشیم پیشنهاد میکنم مقالات زیر رو مطالعه کنید اگر دانشی در مورد پستگرس یا نصب آن در ویندوز ندارید میتوانید با جنگو نیز بیشتر آشنا شوید 

آنچه در این مقاله می آموزید:

  • آموزش اتصال پستگرس به پروژه جنگو
  • آشنایی با ماژول  psycopg2
  • ساخت یک پروژه جنگو
  • آموزش ماژول virtualenv

آموزش اتصال postgresql به پروژه Django:

خب برای اتصال پستگرس به اپ جنگویی خود در این آموزش ابتدا با استفاده از ماژول virtualenv یک محیط مجازی برای پایتون پروژه خودمون ایجاد میکنیم

در ابتدا ماژول virtualenv را بر روی پایتون سیستم خود نصب میکنیم این ماژول برای شما یک پایتون مجزا ایجاد میکند فارق از پایتونی که روی سیستم عامل شما وجود دارد و شما هر کتابخونه ای که در پروژه نیاز داشته باشید باید در این ماژول نصب کنید

pip install virtualenv

پس از آن با یک فولدر برای پروژه خود ایجاد میکنیم و درون فولدر یک محیط مجازی با نام venv ایجاد و اکیتو میکنیم:

mkdir proejct
virtualenv venv
cd venv
cd scripts
activate.bat

و حال جنگو رای روی محیط مجازی خود نصب و یک پروژه جنگو ایجاد میکنیم:

pip install django  
django-admin startproject django-postgres .

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

pip install psycopg2

خب حال نوبت ایجاد یک دیتابیس در پستگرس میباشد که پیشنهاد میکنم مقاله آموزش نصب پستگرس در ویندوز را حتما مطالعه نمایید وارد شل پستگرس شوید و یک دیتابیس ایجاد کنید با نام دلخواه خود و بنده در اینجا نام دیتابیس خودم رو sunlearn_test قرار دادم:

CREATE DATABASE sunlearn_test;

خب پس از ایجاد دیتابیس نوبت به اضافه کردن تنظیمات به قسمت settings.py پروژه خودمون در قسمت DATABASES هست و این تنظیمات را قرار دهید تا بررسی کنیم:

DATABASES = {
‘default’: {
‘ENGINE’: ‘django.db.backends.postgresql_psycopg2’,
‘NAME’: "sunlearn_test",
‘USER’ : "postgres",
‘PASSWORD’ : "12345m,",
‘HOST’ : "localhost",
‘PORT’ : "5432"
}
}
  • ENGINE: یا همان موتور پیشفرض دیتابیس در این قسمت به جنگو میگیم که میخوایم از دیتابیس پستگرس استفاده کنیم
  • NAME:نام دیتابیسی که ایجاد کرده ایم برای پروژه
  • USER: کاربر دیتابیس که به طور پیشفرض ما از همون یوزر postgres استفاده کرده ایم.
  • PASSWORD: رمز عبور کاربر postgres
  • HOST:مقدار هاست رو برابر localhost میدیم چون الان دیتابیس ما روی localhost بالا اومده
  • PORT: شماره پورتی که دیتابیس شما روی آن قرار دارد به طور پیشفرض برای postgres برابر با 5432 میباشد

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

python maange.py makemigrations
python manage.py migrate

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

داکیومنت جنگو

شاید برای شما مفید باشد: آموزش رایگان احراز هویت در جنگو 

آموزش رایگان فریمورک جنگو از صفر 

آموزش رایگان DjangoRestFramework

نظرات

نظر خود را اینجا بگذارید

برای درح نظر ابتدا وارد شوید !