Changes between Version 41 and Version 42 of GeoDjango


Ignore:
Timestamp:
Mar 25, 2007, 1:04:54 PM (18 years ago)
Author:
jbronn
Comment:

added model api

Legend:

Unmodified
Added
Removed
Modified
  • GeoDjango

    v41 v42  
    171171}}}
    172172 * ''Note'': This is done without the 'next generation' SWIG Python bindings. I've had trouble getting them to work, and the rumor is this only works on Windows. The compilation flag to enable these is {{{--with-ngpython}}}, but our packages currently only use the old bindings.
     173
     174= Model API =
     175== Field Keywords ==
     176 * Field keywords are used during model creation, for example:
     177{{{
     178class Zip(models.Model):
     179  code = models.IntegerField()
     180  poly = models.PolygonField(srid=-1, index=True)
     181}}}
     182
     183 * {{{srid}}}
     184   * Sets the SRID of geometry to the value.  Defaults to 4326 (WGS84)
     185 * {{{index}}}
     186   * If set to True, will create an index for the given geometry.
     187   * '''Disabled.'''  Implemented, but there's a bug and won't allow syncdb to execute.
     188
     189== Fields ==
     190
     191The following geometry-enabled fields are available:
     192 * {{{PointField}}}
     193 * {{{LineStringField}}}  (bug in current version has this as {{{LineString}}}, will be fixed)
     194 * {{{PolygonField}}}
     195 * {{{MultiPointField}}}
     196 * {{{MultiLineStringField}}}
     197 * {{{MultiPolygonField}}}
     198 * {{{GeometryCollectionField}}}
     199
     200== Creating a Geometry Object and Saving ==
     201Here is an example of how to create a geometry object (assuming the {{{Zip}}} model example above).  Geometries can be represented in either the WKT (Well Known Text) format, or in HEXEWKB (PostGIS specific, essentially a WKB geometry in hexadecimal).   ''See'' Open GIS Consortium, Inc., ''[http://portal.opengeospatial.org/files/?artifact_id=829&ei=Z5oGRv6aCZ-IwQKh2LXwAw&usg=__4YgoHsbqjocl8Z01SwMAyN84aW0=&sig2=4DpSpm83ZDEIBKSivWcYGQ OpenGIS Simple Feature Specification For SQL]'', Document 99-049 (May 5, 1999), at  Ch. 3.2.5 (SQL Textual Representation of Geometry, pg. 53); ''see also'' [http://postgis.refractions.net/docs/ch04.html#id2904792 "PostGIS EWKB, EWKT and Canonical Forms"], PostGIS documentation at Ch. 4.1.2].
     202{{{
     203>>> from zipcode.models import Zip
     204>>> z = Zip(code=77096, poly='POLYGON(( 10 10, 10 20, 20 20, 20 15, 10 10))')
     205>>> z.save()
     206}}}
Back to Top