1、什么是MongoEngine?
MongoEngine是基于Python的對(duì)象系統(tǒng)設(shè)計(jì)的MongoDB專用的ORM框架。與SQLAlchemy不同的是,MongoEngine會(huì)自動(dòng)生成一個(gè)唯一的標(biāo)識(shí),用ID屬性表示。當(dāng)然MongoEngine與SQLAlchemy還有很對(duì)不同的地方,比如字段類型等。
2、MongoEngine所支持的部分操作符
操作符的表示形式為:加在關(guān)鍵字后面使用"__+操作符"(此處是兩個(gè)" _ "),例如:publish_data__gt
- ne:不等于
- lt:小于
- lte:小于或等于
- gt:大于
- gte:大于或等于
- not:對(duì)一個(gè)操作符取否,例如publish_data__not__gt
- in:值在列表中
- nin:值不在列表中
- mod:值%a==b,a和b用(a,b)的方式傳遞
- all:列表中的所有值都在該字段中
- size:列表的大小
- existes:在該字段中存在這個(gè)值
3、檢測(cè)字符串的部分操作符
- exact:字符串相等
- iexact:字符串相等(大小寫不敏感)
- contains:字符串包含該值
- icontains:字符串包含該值(大小寫不敏感)
- startswith:字符串以該值開始
- istartswith:字符串以該值開始(大小寫不敏感)
- endswith:字符串以該值結(jié)束
- iendswith:字符串以該值結(jié)束(大小寫不敏感)
4、可以對(duì)字段值進(jìn)行修改的操作符
- set:設(shè)置一個(gè)值
- unset:刪除一個(gè)值
- inc:將值自增
- dec:將值自減
- push:把一個(gè)值加到列表的末尾
- push_all:把幾個(gè)值加到列表的末尾
- pop:移除列表中的第一個(gè)或者是最后一個(gè)值
- pull:移除列表中的值
- pull_all:移除列表中的幾個(gè)值
- add_to_set:當(dāng)且晉檔某值不在列表中時(shí),將其添加進(jìn)列表