barker/barker/barker/models/permission.py

23 lines
670 B
Python

import uuid
from barker.models.meta import Base
from barker.models.role_permissions import role_permissions
from sqlalchemy import Column, Unicode, text
from sqlalchemy.dialects.postgresql import UUID
from sqlalchemy.orm import relationship
class Permission(Base):
__tablename__ = "permissions"
id = Column(
"id", UUID(as_uuid=True), primary_key=True, server_default=text("gen_random_uuid()"), default=uuid.uuid4
)
name = Column("name", Unicode(255), unique=True)
roles = relationship("Role", secondary=role_permissions, backref="permissions")
def __init__(self, name=None, id_=None):
self.name = name
self.id = id_