Projekt

Obecné

Profil

Stáhnout (946 Bajtů) Statistiky
| Větev: | Tag: | Revize:
1 aba60b70 Matej Zeman
from sqlalchemy import Boolean, Column, ForeignKey, Integer, String
2
from sqlalchemy.orm import relationship
3
4
from .database import Base
5
6
7
class Device(Base):
8
    __tablename__ = "devices"
9
10
    id = Column(Integer, primary_key=True, index=True)
11
    vendor_id = Column(Integer, index=True, nullable=False)
12
    product_id = Column(Integer, index=True, nullable=False)
13
    serial_number = Column(String, index=True, nullable=False)
14
15
    logs = relationship("USBLog", back_populates="device")
16
17
18
class USBLog(Base):
19
    __tablename__ = "usb_logs"
20
21
    id = Column(Integer, primary_key=True, index=True)
22
    username = Column(String, index=True, nullable=False)
23
    hostname = Column(String, index=True, nullable=False)
24
    timestamp = Column(String, index=True, nullable=False)
25
    status = Column(String, index=True, nullable=False)
26
    device_id = Column(Integer, ForeignKey("devices.id"))
27
28
    device = relationship("Device", back_populates="logs")