Update Content model to enforce status choices and add migration for status field changes

- Introduced STATUS_CHOICES in the Content model to restrict the status field to 'draft', 'review', and 'published'.
- Created a new migration to reflect the updated status choices without altering existing data.
- Removed 'completed' status from the frontend status color mapping for consistency.
This commit is contained in:
IGNY8 VPS (Salman)
2025-11-10 14:28:13 +00:00
parent e067dc759c
commit bbf0aedfdc
3 changed files with 24 additions and 2 deletions

View File

@@ -0,0 +1,18 @@
# Generated manually to update status field choices
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('writer', '0005_move_content_fields_to_content'),
]
operations = [
# No database changes needed - just updating Python-level choices
# Tasks status: queued, completed
# Content status: draft, review, published
# Existing data will remain valid
]

View File

@@ -106,7 +106,12 @@ class Content(SiteSectorBaseModel):
secondary_keywords = models.JSONField(default=list, blank=True, help_text="List of secondary keywords")
tags = models.JSONField(default=list, blank=True, help_text="List of tags")
categories = models.JSONField(default=list, blank=True, help_text="List of categories")
status = models.CharField(max_length=50, default='draft', help_text="Content workflow status (draft, review, published, etc.)")
STATUS_CHOICES = [
('draft', 'Draft'),
('review', 'Review'),
('published', 'Published'),
]
status = models.CharField(max_length=50, choices=STATUS_CHOICES, default='draft', help_text="Content workflow status (draft, review, published)")
generated_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)