【发布时间】:2015-05-07 14:24:53
【问题描述】:
我正在使用没有自定义代码的 django.contrib.auth.models.User 模型类,并且我也有以下模型:
class XYZ(models.Model):
xyzstring = models.TextField()
created_by = models.ForeignKey(User)
资源类如下:
class UserResource(ModelResource):
class Meta:
queryset = User.objects.all()
resource_name = 'user'
excludes = ['email', 'password', 'is_active', 'is_staff', 'is_superuser']
filtering = {
'username': ALL,
}
class XYZResource(ModelResource):
created_by = fields.ForeignKey(UserResource, 'user', full=True)
class Meta:
queryset = XYZ.objects.all()
resource_name = 'xyz'
allowed_methods = ['get','post','put']
details_uri_name= 'id'
paginator_class = Paginator
当我转到 /api/v1/xyz/ 时出现错误:
模型 'XYZ' 有一个空属性 'user' 并且不允许空值。
数据库在 xyz 表的 created_by 列中有有效的用户 ID。如果我删除了 XYZResource 中的 created_by 行,我根本不会得到 created_by 属性。 created_by 不会采用空值,因为 XYZ 对象是由有效用户创建的。
请建议我应该如何解决这个问题
【问题讨论】:
标签: tastypie