infosystem/subsystem/tag/resource.py
from infosystem.database import db
from sqlalchemy import UniqueConstraint
from infosystem.common.subsystem import entity
class Tag(entity.Entity, db.Model):
attributes = ['domain_id', 'name', 'color', 'description']
attributes += entity.Entity.attributes
domain_id = db.Column(
db.CHAR(32), db.ForeignKey('domain.id'), nullable=False)
name = db.Column(db.String(60), nullable=False)
color = db.Column(db.CHAR(7), nullable=False)
description = db.Column(db.String(1024), nullable=False)
__table_args__ = (
UniqueConstraint('domain_id', 'name', name='tag_domain_id_name_uk'),)
def __init__(self, id, domain_id, name, color, description,
active=True, created_at=None, created_by=None,
updated_at=None, updated_by=None, tag=None):
super().__init__(id, active, created_at, created_by,
updated_at, updated_by, tag)
self.domain_id = domain_id
self.name = name
self.color = color
self.description = description