1. 程式人生 > >django連接mongodb mongoengine

django連接mongodb mongoengine

文檔 nec apps .com div 類名 set 依賴 pip3

優點

MongoEngine ()
1. 提供了和 Django 原生 ORM 幾乎一樣的一切,功能已經相當強大;
2. 用起來比 Django 原生 ORM 更簡潔更優雅;
3. MongoEngine 和 Django “契合度”很高,Session,User 模塊幾乎可以直接平移過來,但MongoEngine 本身不依賴 Django,可以用在其他框架上;
4. 本身很輕巧,文檔很豐富,所以文檔提供不了的細節,可以通過直接讀代碼來解決。

當然缺點也是很明顯的,最不能習慣的就是 admin 沒了。

參考https://www.zhihu.com/question/19818326

先安裝mongoengine模塊

pip3 install mongoengine

然後在setting裏配置

在INSTALLED_APPS裏註冊‘mongoengine‘,把原來的database設置為None

INSTALLED_APPS = [
    django.contrib.admin,
    django.contrib.auth,
    django.contrib.contenttypes,
    django.contrib.sessions,
    django.contrib.messages,
    django.contrib.staticfiles
,mongoengine ]

DATABASES = {
    default: {
        ENGINE: None,
        # ‘NAME‘: os.path.join(BASE_DIR, ‘test‘),
    }
}
from mongoengine import connect
connect(test)

models.py使用

在models.py裏導入mongoengine,類名就是表名,繼承基類mongoengine.Document

import mongoengine
class
Visit(mongoengine.Document): v_type = mongoengine.StringField(max_length=30) v_times = mongoengine.IntField(default=1,null=True) end_time=mongoengine.DateTimeField(null=True)

不用makemigrations和migrate,直接就能用

django連接mongodb mongoengine