我目前在尝试将嵌入式模型对象添加到列表中时遇到一些问题,该列表也在嵌入式模型列表中。我将 Django nonrel 和 mongoengine 与 djangotoolbox 一起使用。所以,这是我的 mongo 收藏:
{
"_id" : ObjectId("517fe872e138235e2cae9e8c"),
"campaigns" : [
{
"payout" : 0.7,
"landing_page" : [ ],
"name" : "A prueba de todo",
"rotate_urls" : null,
"_module" : "setup.models",
"_model" : "Campaigns",
"cloaking" : true,
"rotate_urls_status" : false,
"affiliate_url" : "www.google.com/[[subid]][[c1]][[c2]][[c3]][[c4]]"
},
{
"payout" : 0.7,
"landing_page" : [ ],
"name" : "DOS",
"rotate_urls" : null,
"_module" : "setup.models",
"_model" : "Campaigns",
"cloaking" : true,
"rotate_urls_status" : false,
"affiliate_url" : "www.google.com/[[subid]][[c1]][[c2]][[c3]][[c4]]"
}
],
"category_name" : "videos"}
我已经尝试了 8 天在“landing_page”中附加一个新文档,该文档在 category_name 等于“videos”的集合中,其中包含一个名为“DOS”的活动文档所以,我正在尝试在里面附加一个新文档收藏 -> 活动 -> 登陆页面
我尝试过使用 django ORM 使用这样的查询:affnetworkid = Prepare django variable with the document id
collection = Categories.objects.get(id=affnetworkid,campaigns__in={name:campaign_name})
但是没有任何效果!!我需要返回需要在里面的类别结果对象,这个:
{
"payout" : 0.7,
"landing_page" : [ ],
"name" : "DOS",
"rotate_urls" : null,
"_module" : "setup.models",
"_model" : "Campaigns",
"cloaking" : true,
"rotate_urls_status" : false,
"affiliate_url" : "www.google.com/[[subid]][[c1]][[c2]][[c3]][[c4]]"
}
这样我就可以做到这一点:
collection.landing_page.append(LandingPageClass)
collection.save()
但遗憾的是,直到现在,我还没有得到预期的结果......有人可以帮我解决这个问题吗?每次我尝试遍历这样的查询时:
a = Categories.objects.get(id=affnetworkid)
我收到一条错误消息,指出返回的对象不可迭代。谢谢