我有以下资源:
class MachineResource(ModelResource):
manager = fields.ToOneField(UserResource, 'manager',full=True)
class Meta:
queryset = Service.objects.filter(service_type='machine')
resource_name = 'machine'
这很好用。并将返回一个机器列表,以及每个机器中嵌入的用户对象(管理员)。
但是,我只想要经理用户的 2-3 个字段。例如,我不希望它包含经理加盐通行证和其他私有(private)数据。
据我所知,没有办法轻松做到这一点吗?
最佳答案
看看 Quick Start section for django-tastypie 。那里有一个完美的例子。当您为 User
(您的“经理”)定义 ModelResource
子类时,只需添加一个带有 exclude
的 Meta
类> 属性设置为您不想显示的字段列表。
class UserResource(ModelResource):
class Meta:
queryset = User.objects.all()
resource_name = 'auth/user'
excludes = ['email', 'password', 'is_superuser']
关于django - 如何在 django-tastypie 中使用 full=True 限制 ToManyField 中的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8421681/