私はGeoDjangoを使用して、ユーザーがマップ上の領域を選択して名前を付けることができるフォームを表示しています。GeoDjangoポリゴンフィールドParseException
私は次のモデル
import django.contrib.gis.db.models as models
class Area(models.Model):
name = models.CharField(max_length=25)
area_target = models.PolygonField(default='POLYGON EMPTY')
を持っており、このフォーム
from django.contrib.gis import forms
class AreaForm(forms.Form):
name = forms.CharField(max_length=160)
area_target = forms.PolygonField(srid=4326, required=False, widget=forms.OSMWidget(attrs={'map_width': 600, 'map_height': 500}))
は、フォームが正しく表示されていると私はマップウィジェットを使用して領域を選択することができますが、私がすると、次のエラーメッセージが表示されます
GEOS_ERROR: ParseException: Expected 'Z', 'M', 'ZM', 'EMPTY' or '(' but encountered : ')'
GEOS_ERROR: ParseException: Expected 'Z', 'M', 'ZM', 'EMPTY' or '(' but encountered : ')'
Error creating geometry from value 'SRID=900913;POLYGON()' (Error encountered checking Geometry returned from GEOS C function "GEOSWKTReader_read_r".)
デバッグ出力からわかるように、ポリゴンのエッジの値はありません。
私はDjango 1.9.4、postgis拡張機能を備えたpostgres 9.5.1.0 DB、ジオメトリバックエンドとしてgeos 3.5を使用しています。
何か問題があると教えてもらえますか?
あなたはAreaオブジェクトの作成方法を示していません。 – e4c5
領域オブジェクトは、ポリゴンを描画して作成する必要があります。スクリーンショットを追加しました... – user2393256
javascriptコンソールを開いてエラーが表示された場合は表示してください – e4c5