django1.4.22 使用 mongoengine 和遇到的一些问题

403 阅读1分钟

首先 mongodb不是django官方推荐使用的数据库 但是总有一些人想用mongo,于是有了mongoengine 先pip安装 pip install mongoengine 然后在settings中修改(有的文章没有指定host和port) 在这里插入图片描述

DATABASES = {
    'default': {
        'ENGINE': None,
    }
}
from mongoengine import connect
connect('yutong' , host='192.168.14.90' , port=27017)

然后去写models 这里需要注意的是meta 的写法


class KeyWords(mongoengine.Document):
    _id = mongoengine.ObjectIdField()
    keyword = mongoengine.StringField(max_length=100)

    meta = {
        'collection':'keywords'
    }

在view中就可以使用model了 使用mongo无法进行 syncdb 所以 也就无法使用django自带的admin等一些功能。 models的一些方法用起来也有所不同,目前遇到 1.貌似没法使用Q查询 2.没有model_to_dict 方法