REST API:删除影响其他对象的操作

时间:2014-03-21 08:07:58

标签: django rest extjs

我对REST API架构有疑问。 我计划为这种类型的对象提供GET / POST / UPDATE / DELETE访问权限(是的,它是Django):

class Synonym(models.Model):
    name = models.CharField(max_length=64)
    parent = models.ForeignKey('self', null=True, on_delete=models.SET_NULL)

正如您所看到的,当删除某个对象(例如/ synonyms / 3)时,它的所有子对象的parent_id都将设置为None(null)。

是否有标准方法通知用户我的API有关受影响对象的更改?

P.S。我的一个客户正在使用ExtJS。我认为这需要一些调整。

1 个答案:

答案 0 :(得分:2)

属性HTTP状态代码为410 GONE

  

表示请求的资源不再可用且无法再次使用。当有意删除资源并清除资源时,应使用此方法。在收到410状态代码后,客户端将来不应再次请求该资源。

没有特殊方法可以获取有关已删除资源的子项受影响的删除信息。您应记录您的资源并明确说明某些资源只能作为父项的子项存在。