【发布时间】:2014-11-09 12:03:28
【问题描述】:
很奇怪:Pymongo 查询正常,但 Mongoengine 什么也不查询:
class VkWallPostListView(ListView):
model = VkWallPost
context_object_name = "vk_list"
def get_template_names(self):
return ["blog/vk_list.html"]
def get_queryset(self):
wallposts = VkWallPost.objects
if 'all_posts' not in self.request.GET:
#wallposts = wallposts.filter(text='S')
wallposts = VkWallPost._get_collection().find({"text":'S'})
tag = self.request.GET.get('tag', None)
if tag:
wallposts = wallposts.filter(tags=tag)
return wallposts
选项 wallposts = VkWallPost._get_collection().find({"text":'S'}) 返回对象,但相同的 Mongoengine wallposts = wallposts.filter(text='S') 不起作用 - 空结果,没有错误!
更多:我有相同的类来查询另一个集合 - Mongoengine 正常工作。
【问题讨论】:
-
如果 VkWallPost 是您的 mongoengine 模型,那么您可以使用 VkWallPost.objects(text='S') 过滤我们的对象
-
@Rajsubit - 也许你错过了这一行 wallposts = VkWallPost.objects - 完全相同的已经完成
标签: django mongodb pymongo mongoengine