Test for postgis
Project description
Summary
Add types and functions to work with geometric attributes that are stored in a Postgis database (that is a PostgreSQL database with Postgis extension enabled).
The present cube supports only version 2.0 and later of Postgis.
It introduces one new type when defining attributes in the data model schema:
- a Geometry type. Additionally, you should give the following elements
along with a Geometry attribute:
- geom_type. The Postgis type of geometries that this attribute will accept, for example POINT, MULTILINESTRING or POLYGON,
- srid. The spatial reference system the geometry coordinates will live in. This is an integer and a foreign key that must match the srid key in the spatial_ref_sys table. Most of the time, it will be the same as the spatial system EPSG code,
- coord_dimension. The number of dimensions used by geometries. Defaults to 2.
- a Geography type (see the description).
Then you can also use geometric functions like ST_INTERSECTS, ST_WITHIN or ST_UNION to work with this new type.
See Postgis manual for reference documentation about Postgis.
Example
In schema.py, one can declare a City entity like the following.
class City(EntityType): name = String(required=True) geometry = Geometry(geom_type='POLYGON', srid=4326)
You may then make queries like:
# get all cities in a given bounding box rql('City C WHERE C geometry G HAVING(ST_WITHIN(G, ST_MAKEENVELOPE(' '%(left)s, %(bottom)s, %(right)s, %(top)s, 4326)) = TRUE)', {'left': 2.2, 'right': 2.6, 'top': 49, 'bottom': 48}) # get all cities at a given distance from a point, sorted by distance rql('Any C, ST_DISTANCE(G, ST_SETSRID(ST_MAKEPOINT(2.2, 48.4), 4326)) ' 'ORDERBY 5 WHERE ' 'C geometry G HAVING (' ' ST_DWITHIN(G, ST_SETSRID(ST_MAKEPOINT(2.2, 48.4), 4326), 0.1) = TRUE)')
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
cubicweb-postgis-0.9.0.tar.gz
(10.0 kB
view hashes)
Built Distribution
Close
Hashes for cubicweb_postgis-0.9.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5dc2ab3c5660d7b4fdc43949c4287a078665a8c403f9004aa2db79fd33967dc3 |
|
MD5 | 9cca814ef5fa323110d534c0cb3664da |
|
BLAKE2-256 | 09ebb2ea2d8a03853d4377f6d1db75611294bae72c762d7417144b9bc3161c1b |