{"title":"GeoDjango 表单 API","version":"5.2","locale":"zh-hans","docname":"ref/contrib/gis/forms-api","url":"/zh-hans/5.2/ref/contrib/gis/forms-api/","canonical":"https://djangodocs.dev/zh-hans/5.2/ref/contrib/gis/forms-api/","summary":"GeoDjango 提供了一些专门的表单字段和小部件，以便在地图上可视化显示和编辑地理位置数据。默认情况下，它们使用由 NASA 提供的基本 WMS 图层，并由 OpenLayers 驱动的地图。 字段参数 Link to this heading # 除了常规的 表单字段参数 之外，GeoDjango…","html":"<span id=\"geodjango-forms-api\"></span><h1>GeoDjango 表单 API<a class=\"heading-anchor\" href=\"#module-django.contrib.gis.forms\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<p>GeoDjango 提供了一些专门的表单字段和小部件，以便在地图上可视化显示和编辑地理位置数据。默认情况下，它们使用由 <a class=\"reference external\" href=\"https://www.earthdata.nasa.gov/\">NASA</a> 提供的基本 WMS 图层，并由 <a class=\"reference external\" href=\"https://openlayers.org/\">OpenLayers</a> 驱动的地图。</p>\n<section id=\"field-arguments\">\n<h2>字段参数<a class=\"heading-anchor\" href=\"#field-arguments\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>除了常规的 <a class=\"reference internal\" href=\"/zh-hans/5.2/ref/forms/fields/#core-field-arguments\"><span class=\"std std-ref\">表单字段参数</span></a> 之外，GeoDjango 表单字段还接受以下可选参数。</p>\n<section id=\"srid\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">srid</span></code><a class=\"heading-anchor\" href=\"#srid\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.Field.srid\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">Field.</span></span><span class=\"sig-name descname\"><span class=\"pre\">srid</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.Field.srid\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>这是字段值应该转换为的 SRID 代码。例如，如果地图小部件的 SRID 与您的应用程序或数据库通常使用的 SRID 不同，该字段将自动将输入值转换为该 SRID。</p>\n</dd></dl>\n\n</section>\n<section id=\"geom-type\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">geom_type</span></code><a class=\"heading-anchor\" href=\"#geom-type\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.Field.geom_type\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">Field.</span></span><span class=\"sig-name descname\"><span class=\"pre\">geom_type</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.Field.geom_type\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>通常情况下，您不应该设置或更改该属性，它应该根据字段类进行设置。它与 OpenGIS 标准的几何名称相匹配。</p>\n</dd></dl>\n\n</section>\n<section id=\"max-geom-collections\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">max_geom_collections</span></code><a class=\"heading-anchor\" href=\"#max-geom-collections\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.Field.max_geom_collections\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">Field.</span></span><span class=\"sig-name descname\"><span class=\"pre\">max_geom_collections</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.Field.max_geom_collections\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><aside class=\"version-note version-added\" data-version=\"5.2.17\">\n<p class=\"version-note-title\">New in Django 5.2.17</p></aside>\n<p>The maximum number of geometry collections the field accepts before\nrefusing to parse the input and raising a\n<a class=\"reference internal\" href=\"/zh-hans/5.2/ref/exceptions/#django.core.exceptions.ValidationError\" title=\"django.core.exceptions.ValidationError\"><code class=\"xref py py-exc docutils literal notranslate\"><span class=\"pre\">ValidationError</span></code></a>. This guards against crashes\nin the underlying GEOS library when parsing deeply nested\n<code class=\"docutils literal notranslate\"><span class=\"pre\">GEOMETRYCOLLECTION</span></code> input. It defaults to <code class=\"docutils literal notranslate\"><span class=\"pre\">198</span></code>.</p>\n<p>The limit is applied differently depending on the input format: for\nwell-known text (WKT) it bounds the nesting <em>depth</em>, while for well-known\nbinary (WKB and hex-encoded WKB) it bounds the <em>total</em> number of geometry\ncollections (both breadth and depth). As a result, the same value may\naccept a wide, shallow collection as WKT but reject it as WKB. For GeoJSON,\nthe limit is not applied at all, since GDAL parses that input type instead.</p>\n<p>Increase this value (or set to <code class=\"docutils literal notranslate\"><span class=\"pre\">None</span></code>) only if you must accept\nlegitimately deep geometries, since doing so reduces protection against\nfatal errors.</p>\n</dd></dl>\n\n</section>\n</section>\n<section id=\"form-field-classes\">\n<h2>表单字段类<a class=\"heading-anchor\" href=\"#form-field-classes\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<section id=\"geometryfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">GeometryField</span></code><a class=\"heading-anchor\" href=\"#geometryfield\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.GeometryField\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">GeometryField</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.GeometryField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n</section>\n<section id=\"pointfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">PointField</span></code><a class=\"heading-anchor\" href=\"#pointfield\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.PointField\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">PointField</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.PointField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n</section>\n<section id=\"linestringfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">LineStringField</span></code><a class=\"heading-anchor\" href=\"#linestringfield\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.LineStringField\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">LineStringField</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.LineStringField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n</section>\n<section id=\"polygonfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">PolygonField</span></code><a class=\"heading-anchor\" href=\"#polygonfield\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.PolygonField\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">PolygonField</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.PolygonField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n</section>\n<section id=\"multipointfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">MultiPointField</span></code><a class=\"heading-anchor\" href=\"#multipointfield\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.MultiPointField\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">MultiPointField</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.MultiPointField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n</section>\n<section id=\"multilinestringfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">MultiLineStringField</span></code><a class=\"heading-anchor\" href=\"#multilinestringfield\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.MultiLineStringField\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">MultiLineStringField</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.MultiLineStringField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n</section>\n<section id=\"multipolygonfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">MultiPolygonField</span></code><a class=\"heading-anchor\" href=\"#multipolygonfield\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.MultiPolygonField\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">MultiPolygonField</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.MultiPolygonField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n</section>\n<section id=\"geometrycollectionfield\">\n<h3><code class=\"docutils literal notranslate\"><span class=\"pre\">GeometryCollectionField</span></code><a class=\"heading-anchor\" href=\"#geometrycollectionfield\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.GeometryCollectionField\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">GeometryCollectionField</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.GeometryCollectionField\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n</section>\n</section>\n<section id=\"module-django.contrib.gis.forms.widgets\">\n<span id=\"form-widgets\"></span><h2>表单部件<a class=\"heading-anchor\" href=\"#module-django.contrib.gis.forms.widgets\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>GeoDjango 表单小部件允许您在可视地图上显示和编辑地理数据。请注意，目前没有任何可用的小部件支持 3D 几何形状，因此对于这种类型的数据，几何字段将使用 <code class=\"docutils literal notranslate\"><span class=\"pre\">Textarea</span></code> 小部件作为回退。</p>\n<section id=\"widget-attributes\">\n<h3>表单属性<a class=\"heading-anchor\" href=\"#widget-attributes\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>GeoDjango 的小部件是基于模板的，因此它们的属性大部分与其他 Django 小部件的属性不同。</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.widgets.BaseGeometryWidget.geom_type\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">BaseGeometryWidget.</span></span><span class=\"sig-name descname\"><span class=\"pre\">geom_type</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.widgets.BaseGeometryWidget.geom_type\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>OpenGIS 几何类型，通常由表单字段设置。</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.widgets.BaseGeometryWidget.map_srid\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">BaseGeometryWidget.</span></span><span class=\"sig-name descname\"><span class=\"pre\">map_srid</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.widgets.BaseGeometryWidget.map_srid\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>地图使用的 SRID 代码（默认为 4326）。</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.widgets.BaseGeometryWidget.display_raw\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">BaseGeometryWidget.</span></span><span class=\"sig-name descname\"><span class=\"pre\">display_raw</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.widgets.BaseGeometryWidget.display_raw\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>布尔值，指定是否可见一个文本区域输入框，显示当前几何形状的序列化表示，主要用于调试目的（默认为 <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code>）。</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.widgets.BaseGeometryWidget.supports_3d\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">BaseGeometryWidget.</span></span><span class=\"sig-name descname\"><span class=\"pre\">supports_3d</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.widgets.BaseGeometryWidget.supports_3d\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>指示小部件是否支持编辑 3D 数据的属性（默认为 <code class=\"docutils literal notranslate\"><span class=\"pre\">False</span></code>）。</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.widgets.BaseGeometryWidget.template_name\">\n<span class=\"sig-prename descclassname\"><span class=\"pre\">BaseGeometryWidget.</span></span><span class=\"sig-name descname\"><span class=\"pre\">template_name</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.widgets.BaseGeometryWidget.template_name\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>用于呈现地图小部件的模板。</p>\n</dd></dl>\n\n<p>您可以以与任何其他 Django 小部件相同的方式传递小部件属性。例如：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.contrib.gis</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">forms</span>\n\n\n<span class=\"k\">class</span><span class=\"w\"> </span><span class=\"nc\">MyGeoForm</span><span class=\"p\">(</span><span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">Form</span><span class=\"p\">):</span>\n    <span class=\"n\">point</span> <span class=\"o\">=</span> <span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">PointField</span><span class=\"p\">(</span><span class=\"n\">widget</span><span class=\"o\">=</span><span class=\"n\">forms</span><span class=\"o\">.</span><span class=\"n\">OSMWidget</span><span class=\"p\">(</span><span class=\"n\">attrs</span><span class=\"o\">=</span><span class=\"p\">{</span><span class=\"s2\">&quot;display_raw&quot;</span><span class=\"p\">:</span> <span class=\"kc\">True</span><span class=\"p\">}))</span>\n</code></pre></div>\n</section>\n<section id=\"widget-classes\">\n<h3>部件类<a class=\"heading-anchor\" href=\"#widget-classes\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><code class=\"docutils literal notranslate\"><span class=\"pre\">BaseGeometryWidget</span></code></p>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.widgets.BaseGeometryWidget\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">BaseGeometryWidget</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.widgets.BaseGeometryWidget\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>这是一个包含子类所需逻辑的抽象基础小部件。您不能直接将此小部件用于几何字段。请注意，GeoDjango 小部件的呈现是基于一个模板的，该模板由 <a class=\"reference internal\" href=\"#django.contrib.gis.forms.widgets.BaseGeometryWidget.template_name\" title=\"django.contrib.gis.forms.widgets.BaseGeometryWidget.template_name\"><code class=\"xref py py-attr docutils literal notranslate\"><span class=\"pre\">template_name</span></code></a> 类属性指定。</p>\n</dd></dl>\n\n<p><code class=\"docutils literal notranslate\"><span class=\"pre\">OpenLayersWidget</span></code></p>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.widgets.OpenLayersWidget\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">OpenLayersWidget</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.widgets.OpenLayersWidget\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>这是所有 GeoDjango 表单字段默认使用的小部件。<code class=\"docutils literal notranslate\"><span class=\"pre\">template_name</span></code> 是 <code class=\"docutils literal notranslate\"><span class=\"pre\">gis/openlayers.html</span></code>。</p>\n<p><code class=\"docutils literal notranslate\"><span class=\"pre\">OpenLayersWidget</span></code> 和 <a class=\"reference internal\" href=\"#django.contrib.gis.forms.widgets.OSMWidget\" title=\"django.contrib.gis.forms.widgets.OSMWidget\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">OSMWidget</span></code></a> 使用托管在 <code class=\"docutils literal notranslate\"><span class=\"pre\">cdn.jsdelivr.net</span></code> 内容传递网络上的 <code class=\"docutils literal notranslate\"><span class=\"pre\">ol.js</span></code> 文件。您可以子类化这些小部件，以便在内部 <code class=\"docutils literal notranslate\"><span class=\"pre\">Media</span></code> 类的 <code class=\"docutils literal notranslate\"><span class=\"pre\">js</span></code> 属性中指定您自己的 <code class=\"docutils literal notranslate\"><span class=\"pre\">ol.js</span></code> 文件版本（请参阅 <a class=\"reference internal\" href=\"/zh-hans/5.2/topics/forms/media/#assets-as-a-static-definition\"><span class=\"std std-ref\">资源作为静态定义</span></a>）。</p>\n</dd></dl>\n\n<p><code class=\"docutils literal notranslate\"><span class=\"pre\">OSMWidget</span></code></p>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.widgets.OSMWidget\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">OSMWidget</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.widgets.OSMWidget\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>这个小部件使用 OpenStreetMap 基础图层来显示地理对象。属性包括：</p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.widgets.OSMWidget.template_name\">\n<span class=\"sig-name descname\"><span class=\"pre\">template_name</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.widgets.OSMWidget.template_name\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p><code class=\"docutils literal notranslate\"><span class=\"pre\">gis/openlayers-osm.html</span></code></p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.widgets.OSMWidget.default_lat\">\n<span class=\"sig-name descname\"><span class=\"pre\">default_lat</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.widgets.OSMWidget.default_lat\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.widgets.OSMWidget.default_lon\">\n<span class=\"sig-name descname\"><span class=\"pre\">default_lon</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.widgets.OSMWidget.default_lon\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>默认的中心纬度和经度分别是 <code class=\"docutils literal notranslate\"><span class=\"pre\">47</span></code> 和 <code class=\"docutils literal notranslate\"><span class=\"pre\">5</span></code>，这是法国东部的一个位置。</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.forms.widgets.OSMWidget.default_zoom\">\n<span class=\"sig-name descname\"><span class=\"pre\">default_zoom</span></span><a class=\"heading-anchor\" href=\"#django.contrib.gis.forms.widgets.OSMWidget.default_zoom\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>默认的地图缩放级别是 <code class=\"docutils literal notranslate\"><span class=\"pre\">12</span></code>。</p>\n</dd></dl>\n\n<p>关于 JavaScript 文件托管的注意事项也适用于 <a class=\"reference internal\" href=\"#django.contrib.gis.forms.widgets.OpenLayersWidget\" title=\"django.contrib.gis.forms.widgets.OpenLayersWidget\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">OpenLayersWidget</span></code></a>。另请参阅关于地图瓦片的 <code class=\"docutils literal notranslate\"><span class=\"pre\">https</span></code> 访问的 <a class=\"reference external\" href=\"https://help.openstreetmap.org/questions/10920/how-to-embed-a-map-in-my-https-site\">FAQ 答案</a>。</p>\n</dd></dl>\n\n</section>\n</section>","rootId":"module-django.contrib.gis.forms","toc":[{"title":"字段参数","anchor":"field-arguments","children":[{"title":"srid","anchor":"srid","children":[]},{"title":"geom_type","anchor":"geom-type","children":[]},{"title":"max_geom_collections","anchor":"max-geom-collections","children":[]}]},{"title":"表单字段类","anchor":"form-field-classes","children":[{"title":"GeometryField","anchor":"geometryfield","children":[]},{"title":"PointField","anchor":"pointfield","children":[]},{"title":"LineStringField","anchor":"linestringfield","children":[]},{"title":"PolygonField","anchor":"polygonfield","children":[]},{"title":"MultiPointField","anchor":"multipointfield","children":[]},{"title":"MultiLineStringField","anchor":"multilinestringfield","children":[]},{"title":"MultiPolygonField","anchor":"multipolygonfield","children":[]},{"title":"GeometryCollectionField","anchor":"geometrycollectionfield","children":[]}]},{"title":"表单部件","anchor":"module-django.contrib.gis.forms.widgets","children":[{"title":"表单属性","anchor":"widget-attributes","children":[]},{"title":"部件类","anchor":"widget-classes","children":[]}]}],"breadcrumbs":[{"docname":"ref/index","title":"API 参考","url":"/zh-hans/5.2/ref/"},{"docname":"ref/contrib/index","title":"contrib 包","url":"/zh-hans/5.2/ref/contrib/"},{"docname":"ref/contrib/gis/index","title":"GeoDjango","url":"/zh-hans/5.2/ref/contrib/gis/"}],"prev":{"docname":"ref/contrib/gis/db-api","title":"GeoDjango 数据库 API","url":"/zh-hans/5.2/ref/contrib/gis/db-api/"},"next":{"docname":"ref/contrib/gis/geoquerysets","title":"GIS QuerySet API 参考","url":"/zh-hans/5.2/ref/contrib/gis/geoquerysets/"},"formats":{"html":"/zh-hans/5.2/ref/contrib/gis/forms-api/","markdown":"/zh-hans/5.2/ref/contrib/gis/forms-api.md","json":"/zh-hans/5.2/ref/contrib/gis/forms-api.json"},"source":"https://github.com/django/django/blob/stable/5.2.x/docs/ref/contrib/gis/forms-api.txt","official":"https://docs.djangoproject.com/zh-hans/5.2/ref/contrib/gis/forms-api/","inVersions":["6.1","6.0","5.2","5.1","5.0","4.2","4.1","4.0","3.2","3.1","3.0","2.2","2.1","2.0"],"inLocales":["en","sv","zh-hans","ga","fr","ja","id","it","pt-br","ko","es","el","pl"]}