- add geoalchemy2 for inserting geometry observation
- tested original InsertObservation request - see ImportMobileObservation_example.xml
This commit is contained in:
parent
56e3df1cf4
commit
278537d85d
9 changed files with 7003 additions and 31 deletions
11
db/models.py
11
db/models.py
|
@ -13,6 +13,8 @@ from sqlalchemy import (Column, Integer, Sequence,
|
|||
String, DateTime, ForeignKey, Numeric, SmallInteger, create_engine)
|
||||
from sqlalchemy.ext.declarative import declarative_base
|
||||
from sqlalchemy.orm import session, relationship, sessionmaker
|
||||
# from geoalchemy2 import Geometry
|
||||
from geoalchemy2.types import Geometry
|
||||
#from marshmallow import Schema
|
||||
from marshmallow_sqlalchemy import SQLAlchemySchema, SQLAlchemyAutoSchema
|
||||
from marshmallow import fields
|
||||
|
@ -26,7 +28,7 @@ Base = declarative_base()
|
|||
def create_pg_session() -> sessionmaker:
|
||||
""" create postgres db session """
|
||||
load_dotenv(find_dotenv())
|
||||
dbschema = ''
|
||||
dbschema = 'gba'
|
||||
db_user = os.environ.get("POSTGIS_DBUSER")
|
||||
db_password = os.environ.get("POSTGIS_DBPASSWORD")
|
||||
db_url = os.environ.get("POSTGIS_DBURL")
|
||||
|
@ -186,8 +188,9 @@ class Observation(Base):
|
|||
result_time = Column('result_time', DateTime)
|
||||
sta_identifier = Column('sta_identifier', String)
|
||||
value_identifier = Column('value_identifier', String)
|
||||
value_quantity = Column('value_quantity', Numeric(20, 10))
|
||||
value_text = Column('value_text', String)
|
||||
value_quantity = Column('value_quantity', Numeric(20, 10), nullable=True)
|
||||
value_text = Column('value_text', String, nullable=True)
|
||||
value_geometry = Column(Geometry(geometry_type='POLYGON', srid=4326, dimension=3), nullable=True)
|
||||
|
||||
fk_dataset_id = Column(Integer, ForeignKey(
|
||||
'gba.dataset.dataset_id'), nullable=False)
|
||||
|
@ -263,7 +266,7 @@ def create_db():
|
|||
isolation_level="READ UNCOMMITTED", echo=True)
|
||||
# session_maker = sessionmaker(bind=engine)
|
||||
# session = session_maker()
|
||||
Base.metadata.drop_all(bind=engine)
|
||||
# Base.metadata.drop_all(bind=engine)
|
||||
# Base.metadata.create_all(engine)
|
||||
|
||||
|
||||
|
|
Loading…
Add table
editor.link_modal.header
Reference in a new issue