Have an account? Sign in

ডাটাবেইজ কনফিগারেশন

Last updated 3 months ago

জ্যাঙ্গো মূলত ডাটাবেজ ড্রিভেন ফ্রেমওয়ার্ক। অর্থাৎ জ্যাঙ্গো ব্যবহার করতে হলে আপনাকে ডাটাবেইজ ব্যবহার করতে হবে, এবং জ্যাঙ্গোর সাথে ডাটাবেইজ কানেক্ট করে নিতে হবে। প্রাথমিক ভাবে জ্যাঙ্গো সিকুয়েল লাইট (SQLite) ডাটাবেইজ ব্যবহার করে, এটা লাইটওয়েট এবং কোন ধরনের সেটিংস দরকার হয়না, এবং এটা পাইথনের সাথে ডিফল্ট ভাবেই থাকে।

তবে আপনি যদি অন্য কোন ডাটাবেইজ যেমন মাই সিকুয়েল (MySQL), পোস্টগ্রে সিকুয়েল (PostgreSQL) ইত্যাদি ব্যবহার করতে চান তাহলে সেগুলোকে ঠিক মত কনফিগার করে নিতে হবে।

জ্যাঙ্গো প্রোজেক্ট এর সেটিংস ফাইল ওপেন করুনঃ (আমাদের প্রোজেক্টে ফাইলটা হল myproject/settings.py ) সেখানে DATABASES নামে একটা ডিকশনারি দেখতে পাবেন, যেটা দেখতে এরকমঃ

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}

এখানে ডিফল্ট ডাটাবেইজ হিসেবে sqlite3 ব্যবহার করা হয়েছে। 'ENGINE' হল ডাটাবেইজ ড্রাইভারের নাম। এবং 'NAME' হল ডটাবেইজ এর নাম। (SQLite এর ক্ষেত্রে ফাইলের নাম, কেননা sqlite ডাটাবেইজ সিঙ্গেল ফাইলের ভিতর তৈরি হয়)

আপনি যদি অন্য কোন ডাটাবেজ ব্যবহার করতে চান তাহলে সেগুলোর কনফিগারেশন এখানে দিতে হবে, যেমন ধরি আমরা sqlite3 এর পরিবর্তে PostgreSQL ব্যবহার করব, তাহলে উক্ত ডিকশনারিটাকে এভাবে লিখতামঃ

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql', # ডটাবেইজ ড্রাইভার
'NAME': 'mydatabasename', # ডাটাবেইজের নাম
'USER': 'database_username', #ডাটাবেইজ ইউজারনেম
'PASSWORD': 'D@T@B#S3_password', #ডাটাবেইজ পাসওয়ার্ড
'HOST': '', #ডাটাবেইজ হোস্ট, লোকালহোস্ট ব্যবহার করতে চাইলে খালি রাখুন
'PORT': '', # ডাটাবেইজ পোর্ট, ডিফল্ট ব্যবহার করতে চাইলে খালি রাখুন।
}
}

উল্লেখিত ডিকশনারিতে আপনার ডাটাবেইজ অনুযায়ী ‘কি/ভ্যালু’ সেট করে দিতে হবে।

ডাটাবেইজ তৈরি হয়ে গেলে আমাদের কাজ হল মডেল তৈরি করা, মডেল এর কথা মনে আছেতো? ডাটাবেইজের সঙ্গে আমাদের যোগাযোগ হবে মডেলের মাধ্যমে...