20 lines
747 B
Python
20 lines
747 B
Python
from sqlalchemy import String
|
|
|
|
from api.database import (Model, SurrogatePK, db,
|
|
Column, reference_col, relationship)
|
|
from api.target_exchange.models import TargetExchange
|
|
|
|
|
|
class Target(SurrogatePK, Model):
|
|
__tablename__ = "target"
|
|
name = Column(String(255), unique=True, nullable=False)
|
|
routing_key = Column(String(255), nullable=False)
|
|
target_exchange_id = reference_col(TargetExchange.__tablename__, nullable=False)
|
|
exchange = relationship(TargetExchange.__name__, backref=db.backref("targets"))
|
|
|
|
def __init__(self, **kwargs):
|
|
super(Target, self).__init__(**kwargs)
|
|
|
|
def __repr__(self):
|
|
return f'<{Target.__name__}({self.id}):{self.routing_key!r}->{self.exchange.name!r}>'
|