Update README and license notices
This commit is contained in:
parent
0cf2c7e7ac
commit
0ebe3c7a07
97
README.rst
97
README.rst
|
@ -11,6 +11,9 @@ Dependencies
|
||||||
You will need ckan installed, as well as the ckanext-dgu and ckanext-csw
|
You will need ckan installed, as well as the ckanext-dgu and ckanext-csw
|
||||||
plugins activated.
|
plugins activated.
|
||||||
|
|
||||||
|
If you want to use the spatial search API, you will need PostGIS installed
|
||||||
|
and enable the spatial features of your PostgreSQL database. See the
|
||||||
|
"Setting up PostGIS" section for details.
|
||||||
|
|
||||||
Configuration
|
Configuration
|
||||||
=============
|
=============
|
||||||
|
@ -98,4 +101,98 @@ forms:
|
||||||
- 4258
|
- 4258
|
||||||
|
|
||||||
|
|
||||||
|
Setting up PostGIS
|
||||||
|
=================
|
||||||
|
|
||||||
|
Configuration
|
||||||
|
-------------
|
||||||
|
|
||||||
|
* Install PostGIS::
|
||||||
|
|
||||||
|
sudo apt-get install postgresql-8.4-postgis
|
||||||
|
|
||||||
|
* Create a new PostgreSQL database::
|
||||||
|
|
||||||
|
sudo -u postgres createdb [database]
|
||||||
|
|
||||||
|
(If you just want to spatially enable an exisiting database, you can
|
||||||
|
ignore this point, but it's a good idea to create a template to
|
||||||
|
make easier to create new databases)
|
||||||
|
|
||||||
|
* Many of the PostGIS functions are written in the PL/pgSQL language,
|
||||||
|
so we need to enable it in our database::
|
||||||
|
|
||||||
|
sudo -u postgres createlang plpgsql [database]
|
||||||
|
|
||||||
|
* Run the following commands. The first one will create the necessary
|
||||||
|
tables and functions in the database, and the second will populate
|
||||||
|
the spatial reference table::
|
||||||
|
|
||||||
|
sudo -u postgres psql -d [database] -f /usr/share/postgresql/8.4/contrib/postgis-1.5/postgis.sql
|
||||||
|
sudo -u postgres psql -d [database] -f /usr/share/postgresql/8.4/contrib/postgis-1.5/spatial_ref_sys.sql
|
||||||
|
|
||||||
|
* Execute the following command to see if PostGIS was properly
|
||||||
|
installed::
|
||||||
|
|
||||||
|
sudo -u postgres psql -d [database] -c "SELECT postgis_full_version()"
|
||||||
|
|
||||||
|
You should get something like::
|
||||||
|
|
||||||
|
postgis_full_version
|
||||||
|
-------------------------------------------------------------------------------------------------------
|
||||||
|
POSTGIS="1.5.2" GEOS="3.2.2-CAPI-1.6.2" PROJ="Rel. 4.7.1, 23 September 2009" LIBXML="2.7.7" USE_STATS
|
||||||
|
(1 row)
|
||||||
|
|
||||||
|
Also, if you log into the database, you should see two tables,
|
||||||
|
``geometry_columns`` and ``spatial_ref_sys`` (and probably a view
|
||||||
|
called ``geography_columns``).
|
||||||
|
|
||||||
|
Note: This commands will create the two tables owned by the postgres
|
||||||
|
user. You probably should make owner the user that will access the
|
||||||
|
database from ckan::
|
||||||
|
|
||||||
|
ALTER TABLE spatial_ref_sys OWNER TO [your_user];
|
||||||
|
ALTER TABLE geometry_columns OWNER TO [your_user];
|
||||||
|
|
||||||
|
More information on PostGIS installation can be found here:
|
||||||
|
|
||||||
|
http://postgis.refractions.net/docs/ch02.html#PGInstall
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Setting up a spatial table
|
||||||
|
--------------------------
|
||||||
|
|
||||||
|
To be able to store geometries and perform spatial operations, PostGIS
|
||||||
|
needs to work with geometry fields. Geometry fields should always be
|
||||||
|
added via the ``AddGeometryColumn`` function::
|
||||||
|
|
||||||
|
CREATE TABLE package_extent(
|
||||||
|
package_id text PRIMARY KEY
|
||||||
|
);
|
||||||
|
|
||||||
|
ALTER TABLE package_extent OWNER TO [your_user];
|
||||||
|
|
||||||
|
SELECT AddGeometryColumn('package_extent','the_geom', 4258, 'POLYGON', 2);
|
||||||
|
|
||||||
|
This will add a geometry column in the ``package_extent`` table called
|
||||||
|
``the_geom``, with the spatial reference system EPSG:4258. The stored
|
||||||
|
geometries will be polygons, with 2 dimensions.
|
||||||
|
|
||||||
|
Have a look a the table definition, and see how PostGIS has created
|
||||||
|
three constraints to ensure that the geometries follow the parameters
|
||||||
|
defined in the geometry column creation::
|
||||||
|
|
||||||
|
# \d package_extent
|
||||||
|
|
||||||
|
Table "public.package_extent"
|
||||||
|
Column | Type | Modifiers
|
||||||
|
------------+----------+-----------
|
||||||
|
package_id | text | not null
|
||||||
|
the_geom | geometry |
|
||||||
|
Indexes:
|
||||||
|
"package_extent_pkey" PRIMARY KEY, btree (package_id)
|
||||||
|
Check constraints:
|
||||||
|
"enforce_dims_the_geom" CHECK (st_ndims(the_geom) = 2)
|
||||||
|
"enforce_geotype_the_geom" CHECK (geometrytype(the_geom) = 'POLYGON'::text OR the_geom IS NULL)
|
||||||
|
"enforce_srid_the_geom" CHECK (st_srid(the_geom) = 4258)
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -14,3 +14,7 @@ distribution:
|
||||||
|
|
||||||
python build.py {path-to-ckan.cfg} {output-file}
|
python build.py {path-to-ckan.cfg} {output-file}
|
||||||
|
|
||||||
|
The theme used for the OpenLayers controls is the "dark" theme made available
|
||||||
|
by Development Seed under the BSD License:
|
||||||
|
|
||||||
|
https://github.com/developmentseed/openlayers_themes/blob/master/LICENSE.txt
|
||||||
|
|
Loading…
Reference in New Issue