Flask-PyMongo এর মাধ্যমে MongoDB ইন্টিগ্রেশন

Flask এবং MongoDB Integration - ফ্লাস্ক (Flask) - Web Development

256

Flask-PyMongo হলো একটি Flask এক্সটেনশন যা MongoDB-এর সাথে সহজে ইন্টিগ্রেট করার সুবিধা প্রদান করে। এটি MongoDB-এর সাথে কাজ করার জন্য PyMongo লাইব্রেরি ব্যবহার করে এবং Flask অ্যাপ্লিকেশনের মধ্যে MongoDB সংযোগ সহজ করে।

MongoDB হলো একটি NoSQL ডাটাবেস, যা ডকুমেন্ট ভিত্তিক ডাটাবেস হিসেবে পরিচিত। এটি ডাটা সংরক্ষণ, ম্যানিপুলেশন এবং কোয়েরি করার জন্য অনেক শক্তিশালী এবং নমনীয় পদ্ধতি সরবরাহ করে।


Flask-PyMongo ইন্টিগ্রেশন: স্টেপ বাই স্টেপ গাইড

১. প্রাথমিক সেটআপ

ধাপ ১: Flask-PyMongo ইনস্টলেশন

প্রথমে, Flask-PyMongo ইনস্টল করতে হবে। এটি pip কমান্ডের মাধ্যমে ইনস্টল করা যায়।

pip install Flask-PyMongo

ধাপ ২: MongoDB ইনস্টলেশন

আপনার সিস্টেমে MongoDB ইন্সটল করা থাকতে হবে। আপনি MongoDB কমিউনিটি এডিশন MongoDB ডাউনলোড পেজ থেকে ডাউনলোড এবং ইন্সটল করতে পারেন।

MongoDB চালু করার জন্য:

mongod

এটি MongoDB সার্ভার চালু করবে। সাধারণত এটি localhost:27017 এ চলে।


২. Flask অ্যাপে MongoDB ইন্টিগ্রেট করা

ধাপ ১: Flask অ্যাপ তৈরি করা

একটি নতুন Flask অ্যাপ তৈরি করুন এবং Flask-PyMongo ব্যবহার করে MongoDB কনফিগারেশন সেট করুন।

from flask import Flask, jsonify
from flask_pymongo import PyMongo

app = Flask(__name__)

# MongoDB URI কনফিগারেশন
app.config["MONGO_URI"] = "mongodb://localhost:27017/myDatabase"  # আপনার ডাটাবেস URI

# PyMongo ইন্টিগ্রেশন
mongo = PyMongo(app)

@app.route('/')
def home():
    return "MongoDB এর সাথে Flask ইন্টিগ্রেটেড!"

if __name__ == "__main__":
    app.run(debug=True)

এখানে:

  • app.config["MONGO_URI"] MongoDB সার্ভারের URI নির্ধারণ করে, যেখানে ডাটাবেসটি সংরক্ষিত হবে।
  • mongo = PyMongo(app) PyMongo এক্সটেনশন Flask অ্যাপ্লিকেশনের সাথে সংযুক্ত করে।

৩. MongoDB থেকে ডেটা পাওয়া এবং সংরক্ষণ করা

ধাপ ১: MongoDB-তে ডেটা ইন্সার্ট করা

Flask অ্যাপ্লিকেশনে একটি রাউট তৈরি করুন যা MongoDB-তে ডেটা ইন্সার্ট করবে।

@app.route('/add')
def add_data():
    # MongoDB এর ডেটাবেসে ডেটা ইন্সার্ট করা
    users = mongo.db.users  # 'users' নামে একটি কলেকশন ব্যবহার করা
    users.insert_one({'name': 'John Doe', 'age': 30})
    return "ডেটা MongoDB-তে সফলভাবে ইন্সার্ট হয়েছে!"

এখানে:

  • mongo.db.users MongoDB ডাটাবেসের users নামক কলেকশনের রেফারেন্স।
  • insert_one() MongoDB-তে একটি ডকুমেন্ট ইন্সার্ট করার জন্য ব্যবহৃত হয়।

ধাপ ২: MongoDB থেকে ডেটা রিট্রিভ করা

MongoDB থেকে ডেটা রিট্রিভ করার জন্য Flask অ্যাপে একটি নতুন রাউট তৈরি করুন।

@app.route('/get_users')
def get_users():
    users = mongo.db.users.find()  # 'users' কলেকশন থেকে সমস্ত ডেটা পাওয়া
    output = []
    for user in users:
        output.append({'name': user['name'], 'age': user['age']})
    return jsonify(output)

এখানে:

  • find() MongoDB-তে সমস্ত ডকুমেন্ট পেতে ব্যবহৃত হয়। এটি একটি কিউরি রিটার্ন করে, যা পরে অ্যারে হিসাবে রূপান্তরিত হয়।
  • jsonify() Flask এর একটি ফাংশন যা ডেটাকে JSON ফরম্যাটে রিটার্ন করে।

৪. MongoDB ডকুমেন্ট আপডেট এবং ডিলিট করা

ধাপ ১: MongoDB ডকুমেন্ট আপডেট করা

MongoDB ডকুমেন্ট আপডেট করার জন্য Flask অ্যাপে একটি রাউট তৈরি করুন।

@app.route('/update/<username>')
def update_user(username):
    users = mongo.db.users
    users.update_one({'name': username}, {'$set': {'age': 35}})
    return f"{username} এর বয়স আপডেট করা হয়েছে!"

এখানে:

  • update_one() MongoDB ডকুমেন্ট আপডেট করার জন্য ব্যবহৃত হয়। এটি একটি কিউরি এবং আপডেট অপারেশন গ্রহণ করে।

ধাপ ২: MongoDB ডকুমেন্ট ডিলিট করা

MongoDB থেকে ডকুমেন্ট মুছে ফেলার জন্য Flask অ্যাপে একটি রাউট তৈরি করুন।

@app.route('/delete/<username>')
def delete_user(username):
    users = mongo.db.users
    users.delete_one({'name': username})
    return f"{username} মুছে ফেলা হয়েছে!"

এখানে:

  • delete_one() MongoDB ডকুমেন্ট ডিলিট করার জন্য ব্যবহৃত হয়। এটি একটি কিউরি গ্রহণ করে এবং কিউরি মিলে এমন একটি ডকুমেন্ট মুছে ফেলে।

৫. MongoDB এর সাথে Flask প্রজেক্টের নিরাপত্তা বৃদ্ধি

  • MongoDB-তে কনফিগারেশনের সাথে Authentication এবং Authorization ব্যবহার করুন, যাতে শুধুমাত্র অনুমোদিত ইউজারদের অ্যাক্সেস দেয়া যায়।
  • Flask-এ Flask-Login ব্যবহার করে ইউজার সেশন ম্যানেজমেন্ট নিশ্চিত করুন।
  • MongoDB থেকে ডেটা ফিল্টার এবং স্যানিটাইজ করার জন্য input validation করুন, যেন SQL Injection বা অন্যান্য আক্রমণ থেকে বাঁচানো যায়।

Flask-PyMongo এক্সটেনশন MongoDB-এর সাথে সহজভাবে ইন্টিগ্রেট করতে সহায়তা করে, এবং MongoDB এর সমস্ত মৌলিক অপারেশন যেমন ডেটা ইন্সার্ট, রিট্রিভ, আপডেট এবং ডিলিট খুবই সহজেই Flask অ্যাপ্লিকেশনে বাস্তবায়িত করা যায়। Flask এবং MongoDB-কে একত্রে ব্যবহার করলে আপনি শক্তিশালী, স্কেলেবল এবং নমনীয় অ্যাপ্লিকেশন তৈরি করতে পারেন।

Content added By
Promotion

Are you sure to start over?

Loading...