Tastypie只写字段?

时间:2014-06-05 06:36:16

标签: django tastypie

假设您先上传文件 然后创建一个帖子来保存文件。

  1. 用户上传文件
  2. 他获得了文件的id
  3. 在最后保存(创建)帖子之前,他写了其他部分。
  4. 他将(文件的)id和其他数据一起发送到服务器。
  5. 服务器使用id检索图像,并将图像保存在Post模型的图像域中。
  6. 这里,文件的id是只写字段,即在创建模型实例时只需要它。

    你如何处理tastypie?

1 个答案:

答案 0 :(得分:0)

使用Tastypie,您可以使用excludes

class Meta:
    excludes = ['file_field_name']

这不会在GET请求中显示实际字段。为避免在此字段上重写操作而不是tastypie为您提供方法obj_update,它只在PUT和PATCH请求上执行所以您需要在ModelResource类中覆盖此方法,您可以在其中省略file_field更新。如

def obj_update(self, bundle, request, **kwargs):
    bundle.data.pop('file_field')
    return super(ModelResource_class, self).obj_update(bundle, bundle.request, **kwargs)

如果这可以帮助您,请告诉我。 感谢。