sql >> データベース >  >> NoSQL >> MongoDB

djangoでpymongoを直接使用する

    pyMongoを使用できます 以下のコードのように

    from pymongo import MongoClient
    
    
    class MongoConnection(object):
    
        def __init__(self):
            client = MongoClient('localhost', 27017)
            self.db = client['database_name']
    
        def get_collection(self, name):
            self.collection = self.db[name]
    

    必要に応じて接続を作成します。

    class MyCollection(MongoConnection):
    
        def __init__(self):
           super(MyCollection, self).__init__()
           self.get_collection('collection_name')
    
        def update_and_save(self, obj):
           if self.collection.find({'id': obj.id}).count():
               self.collection.update({ "id": obj.id},{'id':123,'name':'test'})
           else:
               self.collection.insert_one({'id':123,'name':'test'})
    
        def remove(self, obj):
            if self.collection.find({'id': obj.id}).count():
               self.collection.delete_one({ "id": obj.id})
    

    今、あなたはただ以下のように電話する必要があります。

    my_col_obj = MyCollection()
    obj = Mymodel.objects.first()
    my_col_obj.update_and_save(obj)
    my_col_obj.remove(obj)
    


    1. データをグループ化して表示する

    2. Go(golang)のMongoDBとmgo:論理演算子を使用してクエリを実行する方法

    3. インデックスが設定されているにもかかわらず、単純なMongoDBクエリが非常に遅い

    4. 更新を決定するマングース-upsertが挿入または更新を行っている