TRM-coding | d1cbf67 | 2025-06-18 15:15:08 +0800 | [diff] [blame^] | 1 | # models/topic.py |
| 2 | from extensions import db |
| 3 | from datetime import datetime |
| 4 | |
| 5 | class Topic(db.Model): |
| 6 | __tablename__ = 'topics' |
| 7 | |
| 8 | id = db.Column(db.Integer, primary_key=True) |
| 9 | name = db.Column(db.String(100), unique=True, nullable=False) |
| 10 | description = db.Column(db.Text) |
| 11 | status = db.Column(db.Enum('active', 'archived'), default='active', nullable=False) |
| 12 | created_at = db.Column(db.DateTime, default=datetime.utcnow, nullable=False) |
| 13 | |
| 14 | posts = db.relationship('Post', backref='topic', lazy='dynamic', cascade='all, delete') |