1

尝试用tastepie和mongodb构建REST接口。我有架构

class ObjectsA(Document):
     attr1 = StringField(max_length=12, required=True)
class ObjectsB(Docuemnt):
     attr2 = ReferenceField(ObjectsA,
                        reverse_delete_rule=CASCADE, dbref=False)

向 ObjectsB 发送 GET 请求后,我得到 json 对象,其中 attr2 为“attr2”:ObjectsA 对象”

如何获得 attr1 以响应对 ObjectsB 的请求?

4

1 回答 1

0

我找到了解决方案。也许它对某人有用。对我来说,这并不明显。在资源类的描述中,您必须描述所有具有 ReferenceField 类型的字段,例如:

from tastypie_mongoengine import fields

class CustomerResource(resources.MongoEngineResource):
    person = fields.ReferenceField(to=
        'test_project.test_app.api.resources.PersonResource',
         attribute='person', full=True)

    class Meta:
        queryset = documents.Customer.objects.all()
        allowed_methods = ('get', 'post', 'put', 'patch', 'delete')
        authorization = tastypie_authorization.Authorization()
于 2012-12-04T07:02:06.847 回答