from flask_sqlalchemy import SQLAlchemy
db = SQLAlchemy()

class User(db.Model):
    __tablename__ = 'users'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(200))
    username = db.Column(db.String(200))
    email = db.Column(db.String(200))
    password = db.Column(db.String(250))
    is_deleted = db.Column(db.String(2))

    def __repr__(self):
        return '<User %r>' % self.username

    @property
    def serialize(self):
        return {
            'id' : self.id,
            'name' : self.name,
            'username' : self.username,
            'email' : self.email,
            'is_deleted' : self.is_deleted
        }

    @staticmethod
    def serialize_list(l):
        return [m.serialize for m in l]