{"title":"LayerMapping verktyg för dataimport","version":"6.0","locale":"sv","docname":"ref/contrib/gis/layermapping","url":"/sv/6.0/ref/contrib/gis/layermapping/","canonical":"https://djangodocs.dev/sv/6.0/ref/contrib/gis/layermapping/","summary":"Klassen LayerMapping ger ett sätt att mappa innehållet i vektorbaserade rumsliga datafiler (t.ex. shapefiler) till GeoDjango-modeller.","html":"<span id=\"layermapping-data-import-utility\"></span><h1><code class=\"docutils literal notranslate\">LayerMapping</code> verktyg för dataimport<a class=\"heading-anchor\" href=\"#module-django.contrib.gis.utils.layermapping\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<p>Klassen <a class=\"reference internal\" href=\"#django.contrib.gis.utils.LayerMapping\" title=\"django.contrib.gis.utils.LayerMapping\"><code class=\"xref py py-class docutils literal notranslate\">LayerMapping</code></a> ger ett sätt att mappa innehållet i vektorbaserade rumsliga datafiler (t.ex. shapefiler) till GeoDjango-modeller.</p>\n<p>Detta verktyg växte fram ur författarens personliga behov av att eliminera kodupprepningen som gick ut på att dra ut geometrier och fält från ett vektorlager, konvertera till ett annat koordinatsystem (t.ex. WGS84) och sedan infoga i en GeoDjango-modell.</p>\n<aside class=\"admonition admonition-note\" role=\"note\">\n<p class=\"admonition-title\">Observera</p>\n<p>Användning av <a class=\"reference internal\" href=\"#django.contrib.gis.utils.LayerMapping\" title=\"django.contrib.gis.utils.LayerMapping\"><code class=\"xref py py-class docutils literal notranslate\">LayerMapping</code></a> kräver GDAL.</p>\n</aside>\n<aside class=\"admonition admonition-warning\" role=\"note\">\n<p class=\"admonition-title\">Varning</p>\n<p>GIS data sources, like shapefiles, may be very large. If you find that\n<a class=\"reference internal\" href=\"#django.contrib.gis.utils.LayerMapping\" title=\"django.contrib.gis.utils.LayerMapping\"><code class=\"xref py py-class docutils literal notranslate\">LayerMapping</code></a> is using too much memory, set <a class=\"reference internal\" href=\"/sv/6.0/ref/settings/#std-setting-DEBUG\"><code class=\"xref std std-setting docutils literal notranslate\">DEBUG</code></a> to\n<code class=\"docutils literal notranslate\">False</code> in your settings. When <a class=\"reference internal\" href=\"/sv/6.0/ref/settings/#std-setting-DEBUG\"><code class=\"xref std std-setting docutils literal notranslate\">DEBUG</code></a> is set to <code class=\"docutils literal notranslate\">True</code>,\nDjango <a class=\"reference internal\" href=\"/sv/6.0/faq/models/#faq-see-raw-sql-queries\"><span class=\"std std-ref\">automatically logs</span></a> <em>every</em> SQL\nquery – and when SQL statements contain geometries, this may consume more\nmemory than is typical.</p>\n</aside>\n<section id=\"example\">\n<h2>Exempel<a class=\"heading-anchor\" href=\"#example\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<ol class=\"arabic simple\">\n<li><p>Du behöver en GDAL-stödd datakälla, t.ex. en shapefil (här använder vi en enkel polygon-shapefil, <code class=\"docutils literal notranslate\">test_poly.shp</code>, med tre funktioner):</p></li>\n</ol>\n<div class=\"code-block\" data-language=\"pycon\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Python console</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=\"Python console code\"><code><span class=\"gp\">&gt;&gt;&gt; </span><span class=\"kn\">from</span> <span class=\"nn\">django.contrib.gis.gdal</span> <span class=\"kn\">import</span> DataSource\n<span class=\"gp\">&gt;&gt;&gt; </span>ds <span class=\"o\">=</span> DataSource<span class=\"p\">(</span><span class=\"s2\">&quot;test_poly.shp&quot;</span><span class=\"p\">)</span>\n<span class=\"gp\">&gt;&gt;&gt; </span>layer <span class=\"o\">=</span> ds<span class=\"p\">[</span><span class=\"mi\">0</span><span class=\"p\">]</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"nb\">print</span><span class=\"p\">(</span>layer<span class=\"o\">.</span>fields<span class=\"p\">)</span>  <span class=\"c1\"># Exploring the fields in the layer, we only want the &#39;str&#39; field.</span>\n<span class=\"go\">[&#39;float&#39;, &#39;int&#39;, &#39;str&#39;]</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"nb\">print</span><span class=\"p\">(</span><span class=\"nb\">len</span><span class=\"p\">(</span>layer<span class=\"p\">))</span>  <span class=\"c1\"># getting the number of features in the layer (should be 3)</span>\n<span class=\"go\">3</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"nb\">print</span><span class=\"p\">(</span>layer<span class=\"o\">.</span>geom_type<span class=\"p\">)</span>  <span class=\"c1\"># Should be &#39;Polygon&#39;</span>\n<span class=\"go\">Polygon</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"nb\">print</span><span class=\"p\">(</span>layer<span class=\"o\">.</span>srs<span class=\"p\">)</span>  <span class=\"c1\"># WGS84 in WKT</span>\n<span class=\"go\">GEOGCS[&quot;GCS_WGS_1984&quot;,</span>\n<span class=\"go\">    DATUM[&quot;WGS_1984&quot;,</span>\n<span class=\"go\">        SPHEROID[&quot;WGS_1984&quot;,6378137,298.257223563]],</span>\n<span class=\"go\">    PRIMEM[&quot;Greenwich&quot;,0],</span>\n<span class=\"go\">    UNIT[&quot;Degree&quot;,0.017453292519943295]]</span>\n</code></pre></div>\n<ol class=\"arabic\">\n<li><p>Nu definierar vi vår motsvarande Django-modell (se till att använda <a class=\"reference internal\" href=\"/sv/6.0/ref/django-admin/#django-admin-migrate\"><code class=\"xref std std-djadmin docutils literal notranslate\">migrate</code></a>):</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=\"nn\">django.contrib.gis.db</span> <span class=\"kn\">import</span> models\n\n\n<span class=\"k\">class</span> <span class=\"nc\">TestGeo</span><span class=\"p\">(</span>models<span class=\"o\">.</span>Model<span class=\"p\">):</span>\n    name <span class=\"o\">=</span> models<span class=\"o\">.</span>CharField<span class=\"p\">(</span>max_length<span class=\"o\">=</span><span class=\"mi\">25</span><span class=\"p\">)</span>  <span class=\"c1\"># corresponds to the &#39;str&#39; field</span>\n    poly <span class=\"o\">=</span> models<span class=\"o\">.</span>PolygonField<span class=\"p\">(</span>srid<span class=\"o\">=</span><span class=\"mi\">4269</span><span class=\"p\">)</span>  <span class=\"c1\"># we want our model in a different SRID</span>\n\n    <span class=\"k\">def</span> <span class=\"fm\">__str__</span><span class=\"p\">(</span><span class=\"bp\">self</span><span class=\"p\">):</span>\n        <span class=\"k\">return</span> <span class=\"s2\">&quot;Name: </span><span class=\"si\">%s</span><span class=\"s2\">&quot;</span> <span class=\"o\">%</span> <span class=\"bp\">self</span><span class=\"o\">.</span>name\n</code></pre></div>\n</li>\n<li><p>Använd <a class=\"reference internal\" href=\"#django.contrib.gis.utils.LayerMapping\" title=\"django.contrib.gis.utils.LayerMapping\"><code class=\"xref py py-class docutils literal notranslate\">LayerMapping</code></a> för att extrahera alla funktioner och placera dem i databasen:</p></li>\n</ol>\n<div class=\"code-block\" data-language=\"pycon\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Python console</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=\"Python console code\"><code><span class=\"gp\">&gt;&gt;&gt; </span><span class=\"kn\">from</span> <span class=\"nn\">django.contrib.gis.utils</span> <span class=\"kn\">import</span> LayerMapping\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"kn\">from</span> <span class=\"nn\">geoapp.models</span> <span class=\"kn\">import</span> TestGeo\n<span class=\"gp\">&gt;&gt;&gt; </span>mapping <span class=\"o\">=</span> <span class=\"p\">{</span>\n<span class=\"gp\">... </span>    <span class=\"s2\">&quot;name&quot;</span><span class=\"p\">:</span> <span class=\"s2\">&quot;str&quot;</span><span class=\"p\">,</span>  <span class=\"c1\"># The &#39;name&#39; model field maps to the &#39;str&#39; layer field.</span>\n<span class=\"gp\">... </span>    <span class=\"s2\">&quot;poly&quot;</span><span class=\"p\">:</span> <span class=\"s2\">&quot;POLYGON&quot;</span><span class=\"p\">,</span>  <span class=\"c1\"># For geometry fields use OGC name.</span>\n<span class=\"gp\">... </span><span class=\"p\">}</span>  <span class=\"c1\"># The mapping is a dictionary</span>\n<span class=\"gp\">&gt;&gt;&gt; </span>lm <span class=\"o\">=</span> LayerMapping<span class=\"p\">(</span>TestGeo<span class=\"p\">,</span> <span class=\"s2\">&quot;test_poly.shp&quot;</span><span class=\"p\">,</span> mapping<span class=\"p\">)</span>\n<span class=\"gp\">&gt;&gt;&gt; </span>lm<span class=\"o\">.</span>save<span class=\"p\">(</span>verbose<span class=\"o\">=</span><span class=\"kc\">True</span><span class=\"p\">)</span>  <span class=\"c1\"># Save the layermap, imports the data.</span>\n<span class=\"go\">Saved: Name: 1</span>\n<span class=\"go\">Saved: Name: 2</span>\n<span class=\"go\">Saved: Name: 3</span>\n</code></pre></div>\n<p>Here, <a class=\"reference internal\" href=\"#django.contrib.gis.utils.LayerMapping\" title=\"django.contrib.gis.utils.LayerMapping\"><code class=\"xref py py-class docutils literal notranslate\">LayerMapping</code></a> transformed the three geometries from the shapefile\nin their original spatial reference system (WGS84) to the spatial reference\nsystem of the GeoDjango model (NAD83). If no spatial reference system is\ndefined for the layer, use the <code class=\"docutils literal notranslate\">source_srs</code> keyword with a\n<a class=\"reference internal\" href=\"/sv/6.0/ref/contrib/gis/gdal/#django.contrib.gis.gdal.SpatialReference\" title=\"django.contrib.gis.gdal.SpatialReference\"><code class=\"xref py py-class docutils literal notranslate\">SpatialReference</code></a> object to specify one.</p>\n</section>\n<section id=\"layermapping-api\">\n<h2>aPI <code class=\"docutils literal notranslate\">LayerMapping</code> API<a class=\"heading-anchor\" href=\"#layermapping-api\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.utils.LayerMapping\">\n<em class=\"property\"><span class=\"k\">class</span> </em><span class=\"sig-name descname\">LayerMapping</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">model</em>, <em class=\"sig-param\">data_source</em>, <em class=\"sig-param\">mapping</em>, <em class=\"sig-param\">layer<span class=\"o\">=</span><span class=\"default_value\">0</span></em>, <em class=\"sig-param\">source_srs<span class=\"o\">=</span><span class=\"default_value\">None</span></em>, <em class=\"sig-param\">encoding<span class=\"o\">=</span><span class=\"default_value\">None</span></em>, <em class=\"sig-param\">transaction_mode<span class=\"o\">=</span><span class=\"default_value\">'commit_on_success'</span></em>, <em class=\"sig-param\">transform<span class=\"o\">=</span><span class=\"default_value\">True</span></em>, <em class=\"sig-param\">unique<span class=\"o\">=</span><span class=\"default_value\">True</span></em>, <em class=\"sig-param\">using<span class=\"o\">=</span><span class=\"default_value\">'default'</span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.contrib.gis.utils.LayerMapping\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>Följande är de argument och nyckelord som kan användas vid instansiering av <code class=\"docutils literal notranslate\">LayerMapping</code> objekt.</p>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>Argument</p></th>\n<th class=\"head\"><p>Beskrivning</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p><code class=\"docutils literal notranslate\">modell</code></p></td>\n<td><p>Den geografiska modellen, <em>inte</em> en instans.</p></td>\n</tr>\n<tr class=\"row-odd\"><td><p><code class=\"docutils literal notranslate\">datakälla</code></p></td>\n<td><p>The path to the OGR-supported data source file\n(e.g., a shapefile). Also accepts\n<a class=\"reference internal\" href=\"/sv/6.0/ref/contrib/gis/gdal/#django.contrib.gis.gdal.DataSource\" title=\"django.contrib.gis.gdal.DataSource\"><code class=\"xref py py-class docutils literal notranslate\">django.contrib.gis.gdal.DataSource</code></a> instances.</p></td>\n</tr>\n<tr class=\"row-even\"><td><p><code class=\"docutils literal notranslate\">mappning</code></p></td>\n<td><p>En ordbok: nycklarna är strängar som motsvarar modellfältet och värdena motsvarar strängfältsnamn för OGR-objektet, eller om modellfältet är geografiskt bör det motsvara OGR:s geometrityp, t.ex. <code class=\"docutils literal notranslate\">'POINT'</code>, <code class=\"docutils literal notranslate\">'LINESTRING'</code>, <code class=\"docutils literal notranslate\">'POLYGON'</code>.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>Argument för nyckelord</p></th>\n<th class=\"head\"></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p><code class=\"docutils literal notranslate\">lager</code></p></td>\n<td><p>Indexet för det lager som ska användas från datakällan (standardvärde 0)</p></td>\n</tr>\n<tr class=\"row-odd\"><td><p><code class=\"docutils literal notranslate\">källa_srs</code></p></td>\n<td><p>Use this to specify the source SRS manually (for\nexample, some shapefiles don’t come with a <code class=\"docutils literal notranslate\">'.prj'</code>\nfile). An integer SRID, WKT or PROJ strings, and\n<a class=\"reference internal\" href=\"/sv/6.0/ref/contrib/gis/gdal/#django.contrib.gis.gdal.SpatialReference\" title=\"django.contrib.gis.gdal.SpatialReference\"><code class=\"xref py py-class docutils literal notranslate\">django.contrib.gis.gdal.SpatialReference</code></a>\nobjects are accepted.</p></td>\n</tr>\n<tr class=\"row-even\"><td><p><code class=\"docutils literal notranslate\">kodning</code></p></td>\n<td><p>Specifies the character set encoding of the strings\nin the OGR data source. For example, <code class=\"docutils literal notranslate\">'latin-1'</code>,\n<code class=\"docutils literal notranslate\">'utf-8'</code>, and <code class=\"docutils literal notranslate\">'cp437'</code> are all valid encoding\nparameters.</p></td>\n</tr>\n<tr class=\"row-odd\"><td><p><code class=\"docutils literal notranslate\">transaktionsläge</code></p></td>\n<td><p>Kan vara <code class=\"docutils literal notranslate\">'commit_on_success</code> (standard) eller <code class=\"docutils literal notranslate\">'autocommit</code>.</p></td>\n</tr>\n<tr class=\"row-even\"><td><p><code class=\"docutils literal notranslate\">transform</code></p></td>\n<td><p>Setting this to False will disable coordinate\ntransformations. In other words, geometries will\nbe inserted into the database unmodified from their\noriginal state in the data source.</p></td>\n</tr>\n<tr class=\"row-odd\"><td><p><code class=\"docutils literal notranslate\">unique</code></p></td>\n<td><p>Setting this to the name, or a tuple of names,\nfrom the given  model will create models unique\nonly to the given name(s). Geometries from\neach feature will be added into the collection\nassociated with the unique model. Forces\nthe transaction mode to be <code class=\"docutils literal notranslate\">'autocommit'</code>.</p></td>\n</tr>\n<tr class=\"row-even\"><td><p><code class=\"docutils literal notranslate\">använder</code></p></td>\n<td><p>Anger den databas som ska användas vid import av rumsliga data. Standard är <code class=\"docutils literal notranslate\">'default'</code>.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<section id=\"save-keyword-arguments\">\n<h3><code class=\"docutils literal notranslate\">save()</code> Nyckelord Argument<a class=\"heading-anchor\" href=\"#save-keyword-arguments\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.utils.LayerMapping.save\">\n<span class=\"sig-prename descclassname\">LayerMapping.</span><span class=\"sig-name descname\">save</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">verbose<span class=\"o\">=</span><span class=\"default_value\">False</span></em>, <em class=\"sig-param\">fid_range<span class=\"o\">=</span><span class=\"default_value\">False</span></em>, <em class=\"sig-param\">step<span class=\"o\">=</span><span class=\"default_value\">False</span></em>, <em class=\"sig-param\">progress<span class=\"o\">=</span><span class=\"default_value\">False</span></em>, <em class=\"sig-param\">silent<span class=\"o\">=</span><span class=\"default_value\">False</span></em>, <em class=\"sig-param\">stream<span class=\"o\">=</span><span class=\"default_value\">sys.stdout</span></em>, <em class=\"sig-param\">strict<span class=\"o\">=</span><span class=\"default_value\">False</span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.contrib.gis.utils.LayerMapping.save\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p>The <code class=\"docutils literal notranslate\">save()</code> method also accepts keywords. These keywords are\nused for controlling output logging, error handling, and for importing\nspecific feature ranges.</p>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>Spara sökordsargument</p></th>\n<th class=\"head\"><p>Beskrivning</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p><code class=\"docutils literal notranslate\">fid_range</code></p></td>\n<td><p>May be set with a slice or tuple of\n(begin, end) feature ID’s to map from\nthe data source. In other words, this\nkeyword enables the user to selectively\nimport a subset range of features in the\ngeographic data source.</p></td>\n</tr>\n<tr class=\"row-odd\"><td><p><code class=\"docutils literal notranslate\">framsteg</code></p></td>\n<td><p>When this keyword is set, status information\nwill be printed giving the number of features\nprocessed and successfully saved. By default,\nprogress information will be printed every 1000\nfeatures processed, however, this default may\nbe overridden by setting this keyword with an\ninteger for the desired interval.</p></td>\n</tr>\n<tr class=\"row-even\"><td><p><code class=\"docutils literal notranslate\">silent</code></p></td>\n<td><p>Som standard skrivs icke-fatala felmeddelanden ut till <code class=\"docutils literal notranslate\">sys.stdout</code>, men detta nyckelord kan anges för att inaktivera dessa meddelanden.</p></td>\n</tr>\n<tr class=\"row-odd\"><td><p><code class=\"docutils literal notranslate\">steg</code></p></td>\n<td><p>Om det anges med ett heltal kommer transaktioner att ske vid varje stegintervall. Om t.ex. <code class=\"docutils literal notranslate\">step=1000</code>, kommer en transaktion att ske efter den 1 000:e funktionen, den 2 000:e funktionen osv.</p></td>\n</tr>\n<tr class=\"row-even\"><td><p><code class=\"docutils literal notranslate\">ström</code></p></td>\n<td><p>Status information will be written to this file\nhandle. Defaults to using <code class=\"docutils literal notranslate\">sys.stdout</code>, but\nany object with a <code class=\"docutils literal notranslate\">write</code> method is supported.</p></td>\n</tr>\n<tr class=\"row-odd\"><td><p><code class=\"docutils literal notranslate\">strikt</code></p></td>\n<td><p>Execution of the model mapping will cease upon\nthe first error encountered. The default value\n(<code class=\"docutils literal notranslate\">False</code>)\nbehavior is to attempt to continue.</p></td>\n</tr>\n<tr class=\"row-even\"><td><p><code class=\"docutils literal notranslate\">verbose</code></p></td>\n<td><p>Om den är inställd kommer information att skrivas ut efter varje modellsparning som utförs i databasen.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n</section>\n<section id=\"troubleshooting\">\n<h2>Felsökning<a class=\"heading-anchor\" href=\"#troubleshooting\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<section id=\"running-out-of-memory\">\n<h3>Minnet tar slut<a class=\"heading-anchor\" href=\"#running-out-of-memory\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>As noted in the warning at the top of this section, Django stores all SQL\nqueries when <code class=\"docutils literal notranslate\">DEBUG=True</code>. Set <code class=\"docutils literal notranslate\">DEBUG=False</code> in your settings, and this\nshould stop excessive memory use when running <code class=\"docutils literal notranslate\">LayerMapping</code> scripts.</p>\n</section>\n<section id=\"mysql-max-allowed-packet-error\">\n<h3>MySQL: <code class=\"docutils literal notranslate\">max_allowed_packet</code> fel<a class=\"heading-anchor\" href=\"#mysql-max-allowed-packet-error\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>Om du stöter på följande fel när du använder <code class=\"docutils literal notranslate\">LayerMapping</code> och MySQL:</p>\n<div class=\"code-block\" data-language=\"pytb\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Pytb</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=\"Pytb code\"><code><span class=\"x\">OperationalError: (1153, &quot;Got a packet bigger than &#39;max_allowed_packet&#39; bytes&quot;)</span>\n</code></pre></div>\n<p>Then the solution is to increase the value of the <code class=\"docutils literal notranslate\">max_allowed_packet</code>\nsetting in your MySQL configuration. For example, the default value may\nbe something low like one megabyte – the setting may be modified in MySQL’s\nconfiguration file (<code class=\"docutils literal notranslate\">my.cnf</code>) in the <code class=\"docutils literal notranslate\">[mysqld]</code> section:</p>\n<div class=\"code-block\" data-language=\"ini\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Ini</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=\"Ini code\"><code><span class=\"na\">max_allowed_packet</span> <span class=\"o\">=</span> <span class=\"s\">10M</span>\n</code></pre></div>\n</section>\n</section>","rootId":"module-django.contrib.gis.utils.layermapping","toc":[{"title":"Exempel","anchor":"example","children":[]},{"title":"aPI LayerMapping API","anchor":"layermapping-api","children":[{"title":"save() Nyckelord Argument","anchor":"save-keyword-arguments","children":[]}]},{"title":"Felsökning","anchor":"troubleshooting","children":[{"title":"Minnet tar slut","anchor":"running-out-of-memory","children":[]},{"title":"MySQL: max_allowed_packet fel","anchor":"mysql-max-allowed-packet-error","children":[]}]}],"breadcrumbs":[{"docname":"ref/index","title":"API-referens","url":"/sv/6.0/ref/"},{"docname":"ref/contrib/index","title":"contrib paket","url":"/sv/6.0/ref/contrib/"},{"docname":"ref/contrib/gis/index","title":"GeoDjango","url":"/sv/6.0/ref/contrib/gis/"},{"docname":"ref/contrib/gis/utils","title":"GeoDjango Verktyg","url":"/sv/6.0/ref/contrib/gis/utils/"}],"prev":{"docname":"ref/contrib/gis/utils","title":"GeoDjango Verktyg","url":"/sv/6.0/ref/contrib/gis/utils/"},"next":{"docname":"ref/contrib/gis/ogrinspect","title":"OGR-inspektion","url":"/sv/6.0/ref/contrib/gis/ogrinspect/"},"formats":{"html":"/sv/6.0/ref/contrib/gis/layermapping/","markdown":"/sv/6.0/ref/contrib/gis/layermapping.md","json":"/sv/6.0/ref/contrib/gis/layermapping.json"},"source":"https://github.com/django/django/blob/stable/6.0.x/docs/ref/contrib/gis/layermapping.txt","official":"https://docs.djangoproject.com/sv/6.0/ref/contrib/gis/layermapping/","inVersions":["6.1","6.0","5.2"],"inLocales":["en","sv","zh-hans","ga","fr","ja","id","it","pt-br","ko","es","el","pl"]}