Приветствую!
Имеется модель для статей следующего вида:
class Article(models.Model):
slug = models.SlugField(max_length=150, unique=True)
title = models.CharField(max_length=150, db_index=True)
description = models.TextField(blank=True, db_index=True)
parent = models.ForeignKey('self', on_delete=models.CASCADE)
Поставил Django REST framework, написал функцию создания и редактирования статей. Создал 2 статьи:
{
"articles": [
{
"slug": "page-title-1",
"title": "Page title 1",
"description": "Page description 1",
"parent_id": null
},
{
"slug": "page-title-2",
"title": "Page title 2",
"description": "Page description 2",
"parent_id": null
}
]
}
Отправляю запрос на изменение статьи id=2 так, чтобы она стала дочерней статьи id=1:
{
"article": {
"slug": "page-title-2",
"title": "Page title 2",
"description": "Page description 2",
"parent_id": 1
}
}
Данные статьи успешно изменились, поле
parent_id
содержит значение 1. Пробую провести манипуляцию обратно (отвязать связь между статьями), отправляю:
{
"article": {
"slug": "page-title-2",
"title": "Page title 2",
"description": "Page description 2",
"parent_id": null
}
}
{
"parent_id": [
"This field may not be null."
]
}
Не может быть null, не вопрос. Но как тогда правильно убрать связь между статьями?