Spaces:
Sleeping
Sleeping
Create models/Post.py
Browse files- models/Post.py +19 -0
models/Post.py
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
from sqlalchemy import Column, Integer, String, DateTime, Float
|
| 2 |
+
from db.database import Base
|
| 3 |
+
import datetime
|
| 4 |
+
|
| 5 |
+
class Post(Base):
|
| 6 |
+
__tablename__ = "posts"
|
| 7 |
+
|
| 8 |
+
id = Column(Integer, primary_key=True)
|
| 9 |
+
title = Column(String)
|
| 10 |
+
slug = Column(String, unique=True)
|
| 11 |
+
excerpt = Column(String)
|
| 12 |
+
content = Column(String)
|
| 13 |
+
thumbnail_url = Column(String, nullable=True) # ✅ Optional thumbnail
|
| 14 |
+
product_url = Column(String, nullable=True) # ✅ Product link (Amazon, etc.)
|
| 15 |
+
image_urls = Column(String, nullable=True) # ✅ Comma-separated image URLs
|
| 16 |
+
published_at = Column(DateTime, default=datetime.datetime.utcnow)
|
| 17 |
+
tags = Column(String, nullable=True) # ✅ Comma-separated tags
|
| 18 |
+
rating = Column(Float, nullable=True) # ✅ ⭐ New: e.g. 4.4
|
| 19 |
+
repeat_purchases = Column(String, nullable=True) # ✅ New: e.g. "2K+ bought again"
|