Inbluff / models.py
Hydui's picture
Upload 6 files
8d720e9 verified
Raw History Blame Contribute Delete
1.58 kB
from flask_sqlalchemy import SQLAlchemy
from datetime import datetime
db = SQLAlchemy()
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
email = db.Column(db.String(255), unique=True, nullable=False)
password_hash = db.Column(db.String(255), nullable=False)
role = db.Column(db.String(30), default="user")
active = db.Column(db.Boolean, default=True)
created_at = db.Column(db.DateTime, default=datetime.utcnow)
class Project(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(120), nullable=False)
slug = db.Column(db.String(120), nullable=False)
description = db.Column(db.Text, default="")
status = db.Column(db.String(30), default="active")
url = db.Column(db.String(500), default="")
created_at = db.Column(db.DateTime, default=datetime.utcnow)
class Setting(db.Model):
id = db.Column(db.Integer, primary_key=True)
key = db.Column(db.String(120), unique=True, nullable=False)
value = db.Column(db.Text, default="")
class Announcement(db.Model):
id = db.Column(db.Integer, primary_key=True)
title = db.Column(db.String(200), nullable=False)
body = db.Column(db.Text, default="")
active = db.Column(db.Boolean, default=True)
created_at = db.Column(db.DateTime, default=datetime.utcnow)
class ApiKey(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(120), nullable=False)
key_hash = db.Column(db.String(255), nullable=False)
created_at = db.Column(db.DateTime, default=datetime.utcnow)