kopia lustrzana https://github.com/glidernet/ogn-python
Remove relations from import tables
rodzic
44e21ef348
commit
3d1e9908b3
|
@ -34,17 +34,6 @@ class AircraftBeacon(Beacon):
|
||||||
location_mgrs_short = db.Column(db.String(9)) # reduced mgrs (9 chars), e.g. used for melissas range tool
|
location_mgrs_short = db.Column(db.String(9)) # reduced mgrs (9 chars), e.g. used for melissas range tool
|
||||||
agl = db.Column(db.Float(precision=2))
|
agl = db.Column(db.Float(precision=2))
|
||||||
|
|
||||||
# Relations
|
|
||||||
receiver_id = db.Column(db.Integer, db.ForeignKey("receivers.id", ondelete="SET NULL"))
|
|
||||||
receiver = db.relationship("Receiver", foreign_keys=[receiver_id], backref="aircraft_beacons")
|
|
||||||
|
|
||||||
device_id = db.Column(db.Integer, db.ForeignKey("devices.id", ondelete="SET NULL"))
|
|
||||||
device = db.relationship("Device", foreign_keys=[device_id], backref="aircraft_beacons")
|
|
||||||
|
|
||||||
# Multi-column indices
|
|
||||||
db.Index("ix_aircraft_beacons_receiver_id_distance", "receiver_id", "distance")
|
|
||||||
db.Index("ix_aircraft_beacons_device_id_timestamp", "device_id", "timestamp")
|
|
||||||
|
|
||||||
def __repr__(self):
|
def __repr__(self):
|
||||||
return "<AircraftBeacon %s: %s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s>" % (
|
return "<AircraftBeacon %s: %s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s>" % (
|
||||||
self.address_type,
|
self.address_type,
|
||||||
|
@ -139,7 +128,3 @@ class AircraftBeacon(Beacon):
|
||||||
self.location_mgrs,
|
self.location_mgrs,
|
||||||
self.location_mgrs_short,
|
self.location_mgrs_short,
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
db.Index("ix_aircraft_beacons_date_device_id_address", func.date(AircraftBeacon.timestamp), AircraftBeacon.device_id, AircraftBeacon.address)
|
|
||||||
db.Index("ix_aircraft_beacons_date_receiver_id_distance", func.date(AircraftBeacon.timestamp), AircraftBeacon.receiver_id, AircraftBeacon.distance)
|
|
||||||
|
|
|
@ -8,60 +8,12 @@ class ReceiverBeacon(Beacon):
|
||||||
__tablename__ = "receiver_beacons"
|
__tablename__ = "receiver_beacons"
|
||||||
|
|
||||||
# disable irrelevant aprs fields
|
# disable irrelevant aprs fields
|
||||||
|
relay = None
|
||||||
track = None
|
track = None
|
||||||
ground_speed = None
|
ground_speed = None
|
||||||
|
|
||||||
# ReceiverBeacon specific data
|
|
||||||
version = db.Column(db.String)
|
|
||||||
platform = db.Column(db.String)
|
|
||||||
cpu_load = db.Column(db.Float(precision=2))
|
|
||||||
free_ram = db.Column(db.Float(precision=2))
|
|
||||||
total_ram = db.Column(db.Float(precision=2))
|
|
||||||
ntp_error = db.Column(db.Float(precision=2))
|
|
||||||
rt_crystal_correction = db.Column(db.Float(precision=2))
|
|
||||||
voltage = db.Column(db.Float(precision=2))
|
|
||||||
amperage = db.Column(db.Float(precision=2))
|
|
||||||
cpu_temp = db.Column(db.Float(precision=2))
|
|
||||||
senders_visible = db.Column(db.Integer)
|
|
||||||
senders_total = db.Column(db.Integer)
|
|
||||||
rec_input_noise = db.Column(db.Float(precision=2))
|
|
||||||
senders_signal = db.Column(db.Float(precision=2))
|
|
||||||
senders_messages = db.Column(db.Integer)
|
|
||||||
good_senders_signal = db.Column(db.Float(precision=2))
|
|
||||||
good_senders = db.Column(db.Integer)
|
|
||||||
good_and_bad_senders = db.Column(db.Integer)
|
|
||||||
|
|
||||||
# User comment: used for additional information like hardware configuration, web site, email address, ...
|
|
||||||
user_comment = None
|
|
||||||
|
|
||||||
# Relations
|
|
||||||
receiver_id = db.Column(db.Integer, db.ForeignKey("receivers.id", ondelete="SET NULL"))
|
|
||||||
receiver = db.relationship("Receiver", foreign_keys=[receiver_id], backref="receiver_beacons")
|
|
||||||
|
|
||||||
# Multi-column indices
|
|
||||||
db.Index("ix_receiver_beacons_receiver_id_name", "receiver_id", "name")
|
|
||||||
|
|
||||||
def __repr__(self):
|
def __repr__(self):
|
||||||
return "<ReceiverBeacon %s: %s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s>" % (
|
return "<ReceiverBeacon {name}: {location},{altitude}{dstcall}{receiver_name}{timestamp}>".format(**self)
|
||||||
self.version,
|
|
||||||
self.platform,
|
|
||||||
self.cpu_load,
|
|
||||||
self.free_ram,
|
|
||||||
self.total_ram,
|
|
||||||
self.ntp_error,
|
|
||||||
self.rt_crystal_correction,
|
|
||||||
self.voltage,
|
|
||||||
self.amperage,
|
|
||||||
self.cpu_temp,
|
|
||||||
self.senders_visible,
|
|
||||||
self.senders_total,
|
|
||||||
self.rec_input_noise,
|
|
||||||
self.senders_signal,
|
|
||||||
self.senders_messages,
|
|
||||||
self.good_senders_signal,
|
|
||||||
self.good_senders,
|
|
||||||
self.good_and_bad_senders,
|
|
||||||
)
|
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def get_columns(self):
|
def get_columns(self):
|
||||||
|
@ -74,24 +26,6 @@ class ReceiverBeacon(Beacon):
|
||||||
"timestamp",
|
"timestamp",
|
||||||
# 'raw_message',
|
# 'raw_message',
|
||||||
# 'reference_timestamp',
|
# 'reference_timestamp',
|
||||||
"version",
|
|
||||||
"platform",
|
|
||||||
"cpu_load",
|
|
||||||
"free_ram",
|
|
||||||
"total_ram",
|
|
||||||
"ntp_error",
|
|
||||||
"rt_crystal_correction",
|
|
||||||
"voltage",
|
|
||||||
"amperage",
|
|
||||||
"cpu_temp",
|
|
||||||
"senders_visible",
|
|
||||||
"senders_total",
|
|
||||||
"rec_input_noise",
|
|
||||||
"senders_signal",
|
|
||||||
"senders_messages",
|
|
||||||
"good_senders_signal",
|
|
||||||
"good_senders",
|
|
||||||
"good_and_bad_senders",
|
|
||||||
]
|
]
|
||||||
|
|
||||||
def get_values(self):
|
def get_values(self):
|
||||||
|
@ -104,25 +38,4 @@ class ReceiverBeacon(Beacon):
|
||||||
self.timestamp,
|
self.timestamp,
|
||||||
# self.raw_message,
|
# self.raw_message,
|
||||||
# self.reference_timestamp,
|
# self.reference_timestamp,
|
||||||
self.version,
|
|
||||||
self.platform,
|
|
||||||
self.cpu_load,
|
|
||||||
self.free_ram,
|
|
||||||
self.total_ram,
|
|
||||||
self.ntp_error,
|
|
||||||
self.rt_crystal_correction,
|
|
||||||
self.voltage,
|
|
||||||
self.amperage,
|
|
||||||
self.cpu_temp,
|
|
||||||
int(self.senders_visible) if self.senders_visible else None,
|
|
||||||
int(self.senders_total) if self.senders_visible else None,
|
|
||||||
self.rec_input_noise,
|
|
||||||
self.senders_signal,
|
|
||||||
int(self.senders_messages) if self.senders_messages else None,
|
|
||||||
self.good_senders_signal,
|
|
||||||
int(self.good_senders) if self.good_senders else None,
|
|
||||||
int(self.good_and_bad_senders) if self.good_and_bad_senders else None,
|
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
db.Index("ix_receiver_beacons_date_receiver_id", func.date(ReceiverBeacon.timestamp), ReceiverBeacon.receiver_id)
|
|
||||||
|
|
|
@ -0,0 +1,76 @@
|
||||||
|
"""Remove non position fields from AircraftBeacon and ReceiverBeacon
|
||||||
|
|
||||||
|
Revision ID: 079fe885ae20
|
||||||
|
Revises: 6c19cedf5fa7
|
||||||
|
Create Date: 2019-09-25 21:42:34.924732
|
||||||
|
|
||||||
|
"""
|
||||||
|
from alembic import op
|
||||||
|
import sqlalchemy as sa
|
||||||
|
from sqlalchemy.dialects import postgresql
|
||||||
|
|
||||||
|
# revision identifiers, used by Alembic.
|
||||||
|
revision = '079fe885ae20'
|
||||||
|
down_revision = '6c19cedf5fa7'
|
||||||
|
branch_labels = None
|
||||||
|
depends_on = None
|
||||||
|
|
||||||
|
|
||||||
|
def upgrade():
|
||||||
|
op.drop_constraint('aircraft_beacons_receiver_id_fkey', 'aircraft_beacons', type_='foreignkey')
|
||||||
|
op.drop_constraint('aircraft_beacons_device_id_fkey', 'aircraft_beacons', type_='foreignkey')
|
||||||
|
op.drop_column('aircraft_beacons', 'device_id')
|
||||||
|
op.drop_column('aircraft_beacons', 'receiver_id')
|
||||||
|
|
||||||
|
op.drop_constraint('receiver_beacons_receiver_id_fkey', 'receiver_beacons', type_='foreignkey')
|
||||||
|
op.drop_column('receiver_beacons', 'receiver_id')
|
||||||
|
|
||||||
|
op.drop_column('receiver_beacons', 'total_ram')
|
||||||
|
op.drop_column('receiver_beacons', 'senders_visible')
|
||||||
|
op.drop_column('receiver_beacons', 'senders_messages')
|
||||||
|
op.drop_column('receiver_beacons', 'cpu_temp')
|
||||||
|
op.drop_column('receiver_beacons', 'platform')
|
||||||
|
op.drop_column('receiver_beacons', 'rec_input_noise')
|
||||||
|
op.drop_column('receiver_beacons', 'ntp_error')
|
||||||
|
op.drop_column('receiver_beacons', 'good_senders')
|
||||||
|
op.drop_column('receiver_beacons', 'senders_total')
|
||||||
|
op.drop_column('receiver_beacons', 'cpu_load')
|
||||||
|
op.drop_column('receiver_beacons', 'free_ram')
|
||||||
|
op.drop_column('receiver_beacons', 'good_and_bad_senders')
|
||||||
|
op.drop_column('receiver_beacons', 'amperage')
|
||||||
|
op.drop_column('receiver_beacons', 'voltage')
|
||||||
|
op.drop_column('receiver_beacons', 'senders_signal')
|
||||||
|
op.drop_column('receiver_beacons', 'version')
|
||||||
|
op.drop_column('receiver_beacons', 'relay')
|
||||||
|
op.drop_column('receiver_beacons', 'rt_crystal_correction')
|
||||||
|
op.drop_column('receiver_beacons', 'good_senders_signal')
|
||||||
|
|
||||||
|
|
||||||
|
def downgrade():
|
||||||
|
op.add_column('receiver_beacons', sa.Column('receiver_id', sa.INTEGER(), autoincrement=False, nullable=True))
|
||||||
|
op.create_foreign_key('receiver_beacons_receiver_id_fkey', 'receiver_beacons', 'receivers', ['receiver_id'], ['id'], ondelete='SET NULL')
|
||||||
|
|
||||||
|
op.add_column('receiver_beacons', sa.Column('good_senders_signal', sa.REAL(), autoincrement=False, nullable=True))
|
||||||
|
op.add_column('receiver_beacons', sa.Column('rt_crystal_correction', sa.REAL(), autoincrement=False, nullable=True))
|
||||||
|
op.add_column('receiver_beacons', sa.Column('relay', sa.VARCHAR(), autoincrement=False, nullable=True))
|
||||||
|
op.add_column('receiver_beacons', sa.Column('version', sa.VARCHAR(), autoincrement=False, nullable=True))
|
||||||
|
op.add_column('receiver_beacons', sa.Column('senders_signal', sa.REAL(), autoincrement=False, nullable=True))
|
||||||
|
op.add_column('receiver_beacons', sa.Column('voltage', sa.REAL(), autoincrement=False, nullable=True))
|
||||||
|
op.add_column('receiver_beacons', sa.Column('amperage', sa.REAL(), autoincrement=False, nullable=True))
|
||||||
|
op.add_column('receiver_beacons', sa.Column('good_and_bad_senders', sa.INTEGER(), autoincrement=False, nullable=True))
|
||||||
|
op.add_column('receiver_beacons', sa.Column('free_ram', sa.REAL(), autoincrement=False, nullable=True))
|
||||||
|
op.add_column('receiver_beacons', sa.Column('cpu_load', sa.REAL(), autoincrement=False, nullable=True))
|
||||||
|
op.add_column('receiver_beacons', sa.Column('senders_total', sa.INTEGER(), autoincrement=False, nullable=True))
|
||||||
|
op.add_column('receiver_beacons', sa.Column('good_senders', sa.INTEGER(), autoincrement=False, nullable=True))
|
||||||
|
op.add_column('receiver_beacons', sa.Column('ntp_error', sa.REAL(), autoincrement=False, nullable=True))
|
||||||
|
op.add_column('receiver_beacons', sa.Column('rec_input_noise', sa.REAL(), autoincrement=False, nullable=True))
|
||||||
|
op.add_column('receiver_beacons', sa.Column('platform', sa.VARCHAR(), autoincrement=False, nullable=True))
|
||||||
|
op.add_column('receiver_beacons', sa.Column('cpu_temp', sa.REAL(), autoincrement=False, nullable=True))
|
||||||
|
op.add_column('receiver_beacons', sa.Column('senders_messages', sa.INTEGER(), autoincrement=False, nullable=True))
|
||||||
|
op.add_column('receiver_beacons', sa.Column('senders_visible', sa.INTEGER(), autoincrement=False, nullable=True))
|
||||||
|
op.add_column('receiver_beacons', sa.Column('total_ram', sa.REAL(), autoincrement=False, nullable=True))
|
||||||
|
|
||||||
|
op.add_column('aircraft_beacons', sa.Column('receiver_id', sa.INTEGER(), autoincrement=False, nullable=True))
|
||||||
|
op.add_column('aircraft_beacons', sa.Column('device_id', sa.INTEGER(), autoincrement=False, nullable=True))
|
||||||
|
op.create_foreign_key('aircraft_beacons_device_id_fkey', 'aircraft_beacons', 'devices', ['device_id'], ['id'], ondelete='SET NULL')
|
||||||
|
op.create_foreign_key('aircraft_beacons_receiver_id_fkey', 'aircraft_beacons', 'receivers', ['receiver_id'], ['id'], ondelete='SET NULL')
|
Ładowanie…
Reference in New Issue