- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
在我的 Django-mongodb 模型上,我想要一个对象,它的 listField 包含对其他对象的引用。这是我想要实现的示例:
模型.py
class Comment(models.Model):
title = models.CharField(max_length=50)
body = models.CharField(max_length=50)
class Post(models.Model):
name = models.CharField(max_length=50)
commentList = ListField(models.ForeignKey(Comment))
api.py(Tastypie 资源)
class CommentResource(MongoResource):
class Meta:
object_class = Comment
queryset = Comment.objects.all()
resource_name = 'comment'
authentication = Authentication()
authorization = Authorization()
class PostResource(MongoResource):
commentList = ListField(models.ForeignKey('CommentResource', 'commentList') #Wrong but just the expression of my incomprehension.
class Meta:
object_class = Post
queryset = Post.objects.all()
resource_name = 'post'
authentication = Authentication()
authorization = Authorization()
在此示例中,字段“commentList”包含引用“评论”对象的“对象 ID”列表。如果什么都不做,我的“发布”资源上的 HTTP GET 将给我:
[...],
objects: [
{
id: "4f47b159c789550388000000",
name: "Hello World",
commentList: "[u'4f47b14ec789550387000000']",
resource_uri: "/api/v1/post/4f47b159c789550388000000/"
}
]
我想得到的是:
[...],
objects: [
{
id: "4f47b159c789550388000000",
name: "Hello World",
commentList:
[
comment:{
title : "My comment title",
body : "It would be great if tastypie-nonrel could do this!",
resource_uri: "/api/v1/comment/454f4v59c789550388051486/"
}
],
resource_uri: "/api/v1/post/4f47b159c789550388000000/"
}
]
我的问题是:如何解析对对象 Comment 的引用,并通过对资源 Post 的 API 调用使其可用?
如果这不可能,那么设计我的非关系数据模型的最佳方式是什么,以便一个帖子可以包含多个评论,但是那个评论是否可以单独访问并独立更新?
非常感谢您的帮助!
最佳答案
尝试像这样自定义 PostResource 的脱水功能:
class PostResource(MongoResource):
commentList = ListField(models.ForeignKey('CommentResource', 'commentList')
class Meta:
object_class = Post
queryset = Post.objects.all()
resource_name = 'post'
authentication = Authentication()
authorization = Authorization()
def dehydrate(self, bundle):
cmt_res = CommentResource()
cmt_bundles = [cmt_res.build_bundle(c) for c in bundle.obj.commentList]
for cb in cmt_bundles:
cmt_res.full_dehydrate(cb)
bundle.data['commentList'] = cmb_bundles
关于Django,mongodb,Tastypie-nonrel : List of ForeignKey,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9434823/
我正在尝试在 GAE (Google App Engine) 上设置 django-nonrel - 按照此处的步骤操作 http://www.allbuttonspressed.com/projec
我正在尝试在 AppEngine 上为我的网站设置 Django 管理套件,但它无法正常工作。我正在将 django-nonrel 设置与 .我站点的其余部分似乎工作正常,但我需要让管理员正常工作,这
有点奇怪。我已经为我的应用程序创建了一个 django admin super 用户,这只是一个启用了 admin 的新 django nonrel 项目。我尝试在运行开发服务器时访问/admin,但
将 Google App Engine 与 Django-nonrel 一起使用时,有什么方法可以利用 Async Datastore API当我用 Django API 声明我的模型类时? 最佳答案
在我的 django-nonrel 项目中,所有用户名都以“_”(下划线)连接。例如,如果用户名是“guest_test”,那么我想拆分 guest 并单独测试。我正在尝试使用以下代码: Curren
在非关系数据库中基于外键属性进行过滤的最佳做法是什么?我知道缺少 join 支持会使事情变得更加复杂,所以我想知道其他人是如何解决这个问题的。 在我的例子中,我有事件,它们属于站点,属于区域。我想过滤
我正在开发一个在 Google 的 AppEngine 上运行的 django-nonrel 项目。我想为一个游戏创建一个模型,其中包含所有运动通常共有的细节 - 即游戏时间、状态、位置等。然后我为
我正在尝试将 Django nonrel 项目用于谷歌应用引擎。我按照描述设置测试项目 here .我为我的静态文件在名为“static”的项目中添加了一个新文件夹。对于 app.yaml 文件,我添
当我尝试安装 pip install "git+ https://github.com/django-nonrel/mongodb-engine"我遇到了一个错误 ERROR:root:Error w
使用 Google App Engine 2.6.0 和 Python 2.7 运行 Django Nonrel,我在尝试首次加载 localhost 和 localhost/admin 时遇到此异常
我正在尝试使用以下方法开发网络应用程序:- MongoDb 作为数据库- Django 作为网络框架 我遇到了一些问题,这让我怀疑这种方法的质量我的设置是:- MongoDb 安装并正常工作- Dja
我正在使用 django-nonrel 和 django-mongodb 引擎。 在引擎的documentation ,它说它支持 django 的 Meta 选项。 我尝试在这样的模型中使用 uni
在我的 Django-mongodb 模型上,我想要一个对象,它的 listField 包含对其他对象的引用。这是我想要实现的示例: 模型.py class Comment(models.Model)
我一直在绝望地尝试让它发挥作用。 我有一个包含 EmbeddedObjects 的 ListField 的模型,基本上它是拍卖中的一个项目,其中包含一个出价列表。典型的 MongoDB 方法。 我知道
是否可以使用类似于 Django 管理中的内联关系项的东西来表示 ListField 中的嵌入式模型? 例如,我有以下模型: class CartEntry(model.Model): pro
我开始学习如何在 Google App Engine 上使用 Django。 我搜索了一些介绍教程,比如 this one . 但看起来并没有真正更新(2010 年 11 月)。 如果有人能给我一个很
我对 App Engine 开发领域非常陌生,我想从 Django 和 GAE 上的测试项目开始。我做了一些研究,发现在 GAE 上的应用程序中使用 Django 有两种主要方法。 Django-no
如何安装 Django-nonrel (Django 1.5)?是否支持此版本的 django? 这是针对 1.3 的:http://docs.mongodb.org/manual/tutorial/
有人让 Django-SocialAuth 与 Django-nonrel 一起使用吗?他们一起工作吗? 如果你已经做到了,请告诉我。有什么需要注意的问题吗? 最佳答案 确实如此,如果您使用非相关数据
我在本地运行的谷歌应用引擎项目上使用 Django nonrel 项目进行开发。我已经创建了自己的模型,当它们在数据存储区中保存和检索时就没问题了。 我希望使用 django.contrib.auth
我是一名优秀的程序员,十分优秀!