phase 8
This commit is contained in:
@@ -158,6 +158,37 @@ class Content(SiteSectorBaseModel):
|
||||
optimizer_version = models.IntegerField(default=0, help_text="Version of optimizer processing")
|
||||
optimization_scores = models.JSONField(default=dict, blank=True, help_text="Optimization scores (SEO, readability, engagement)")
|
||||
|
||||
# Phase 8: Universal Content Types
|
||||
ENTITY_TYPE_CHOICES = [
|
||||
('blog_post', 'Blog Post'),
|
||||
('article', 'Article'),
|
||||
('product', 'Product'),
|
||||
('service', 'Service Page'),
|
||||
('taxonomy', 'Taxonomy Page'),
|
||||
('page', 'Page'),
|
||||
]
|
||||
entity_type = models.CharField(
|
||||
max_length=50,
|
||||
choices=ENTITY_TYPE_CHOICES,
|
||||
default='blog_post',
|
||||
db_index=True,
|
||||
help_text="Type of content entity"
|
||||
)
|
||||
|
||||
# Phase 8: Structured content blocks
|
||||
json_blocks = models.JSONField(
|
||||
default=list,
|
||||
blank=True,
|
||||
help_text="Structured content blocks (for products, services, taxonomies)"
|
||||
)
|
||||
|
||||
# Phase 8: Content structure data
|
||||
structure_data = models.JSONField(
|
||||
default=dict,
|
||||
blank=True,
|
||||
help_text="Content structure data (metadata, schema, etc.)"
|
||||
)
|
||||
|
||||
class Meta:
|
||||
app_label = 'writer'
|
||||
db_table = 'igny8_content'
|
||||
@@ -170,6 +201,7 @@ class Content(SiteSectorBaseModel):
|
||||
models.Index(fields=['source']),
|
||||
models.Index(fields=['sync_status']),
|
||||
models.Index(fields=['source', 'sync_status']),
|
||||
models.Index(fields=['entity_type']), # Phase 8
|
||||
]
|
||||
|
||||
def save(self, *args, **kwargs):
|
||||
|
||||
Reference in New Issue
Block a user