1. 程式人生 > 其它 >django連線mongodb資料庫及一些ORM操作

django連線mongodb資料庫及一些ORM操作

1 連線資料庫

安裝djongo

django本來不支援mongodb,需要使用djongo庫,還可以保持原來的ORM操作不變

在專案檔案的settings.py引用

DATABASES = {
    'default': {
        'ENGINE': 'djongo',  # 選擇djongo
        'ENFORCE_SCHEMA': True,
        'NAME': 'your_database',
        'HOST': '127.0.0.1',  # 本地連線
        'PORT': 27017,
    }
}

連線遠端資料庫

連線遠端資料庫需要修改settings.py

'HOST'的IP地址

由於pymongo庫的預設配置使用localhost,還需要修改其配置

你的python路徑/site-packages/pymongo/mongo_client.py

HOST = "遠端資料庫IP"

2 ORM操作

ORM原理這篇文章講得很清楚

2.1 建立模型

開啟django應用的models.py

from djongo import models  # 注意是djongo


class Your_model(models.Model):
    time = models.DateTimeField(auto_now_add=False)  # 新增時間戳欄位
    a = models.FloatField()
    b = models.FloatField()

2.2 簡單的查詢

查詢第一條和最後一條資料

from .models import Your_model


q1 = Your_model.objects.first()
q2 = Your_model.objects.last()

查詢一條資料的一個欄位

time1 = q1.time

根據時間範圍查詢

q3 = Your_model.objects.filter(time__range=(start, end))
# start end  格式需與DateTimeField的格式一致
# 如:2011-01-01T00:02:31

根據特定條件查詢一條資料

q4 = Your_model.objects.filter(id=XXX)

本文最新版本