在MongoDB中,我可以在子字段上执行projections。例如,db.collection.find({},{"field.subfield":1, "_id":0})
将返回所有文档并仅显示指定的子字段,并隐藏输出中的任何其他字段。
PyMongo进行support预测,但似乎不适用于子字段。下面给出了一个示例代码。
from pymongo import MongoClient
client = MongoDB()
client.db.collection.find(projection=['field1','field2.subfield'])
所以我的问题是:PyMongo是否支持子场预测?如果是,那么正确的语法是什么?
答案 0 :(得分:2)
适合我:
$(document).ready(function () {
$('#myform').on('submit', function(e) {
e.preventDefault();
$.ajax({
url : $(this).attr('action') || window.location.pathname,
type: "GET",
data: $(this).serialize(),
success: function (data) {
$("#form_output").html(data);
},
error: function (jXHR, textStatus, errorThrown) {
alert(errorThrown);
}
});
});
});
打印:
from pymongo import MongoClient
client = MongoClient()
client.db.collection.drop()
client.db.collection.insert_one({
'field1': 1,
'field2': {
'subfield': 'sub',
'othersubfield' : 'othersub'
}
})
print(list(client.db.collection.find(projection=['field1','field2.subfield'])))
你会观察到" othersubfield"是否包含 ,因为它已从投影中省略。