1 from db import Base
2 from sqlalchemy import Column, Unicode, Table, Integer, ForeignKey
3 from sqlalchemy.orm import relation, backref
4 from main.model import Computer
5
6 metadata = Base.metadata
7
9 __tablename__ = 'hardware_profile'
10
11 id = Column(Integer, primary_key=True)
12 name = Column(Unicode(256))
13
14 hardware_profile_computer = Table(
15 'hardware_profile_computer', metadata,
16 Column('profile_id', Integer, ForeignKey('hardware_profile.id')),
17 Column('computer_id', Integer, ForeignKey('computer.id')))
18 computers = relation('Computer', secondary = hardware_profile_computer,
19 backref='hardware')
20
23
25 __tablename__ = 'hardware_element'
26
27 id = Column(Integer, primary_key=True)
28 type = Column(Unicode(3), primary_key=True)
29 description = Column(Unicode(512), primary_key=True)
30
31 hardware_profile_hardware_element = Table(
32 'hardware_profile_hardware_element',metadata,
33 Column('element_id', Integer, ForeignKey('hardware_element.id')),
34 Column('profile_id', Integer, ForeignKey('hardware_profile.id')))
35
36 profiles = relation('HardwareProfile',
37 secondary = hardware_profile_hardware_element, backref='elements')
38
40 return self.id == other.id
41