fix(blog): limit category nesting depth
This commit is contained in:
@@ -343,10 +343,14 @@ def _validate_category_parent(category_id: int | None, parent_id: int | None) ->
|
||||
return None, None
|
||||
if category_id and parent_id == category_id:
|
||||
return None, "A category cannot be its own parent."
|
||||
if category_id and Category.objects.filter(parent_id=category_id).exists():
|
||||
return None, "A category with child categories must remain a root category."
|
||||
|
||||
parent = Category.objects.filter(id=parent_id).first()
|
||||
if not parent:
|
||||
return None, "Parent category not found."
|
||||
if parent.parent_id:
|
||||
return None, "Only root categories can be selected as a parent."
|
||||
|
||||
current = parent
|
||||
seen: set[int] = set()
|
||||
|
||||
Reference in New Issue
Block a user