La xaliyay: django pointfield qiimaha qaabka ciyaaraha

Dhibka ugu weyni waa in aysan suurtagal ahayn in la qeexo qaabka goobta bar-tilmaameedka caadiga ah ee ciyaaraha.

I am trying to load a fixture in Django that has a PointField. The value is stored in the database as:
<code>SRID=4326;POINT(1.23456789 1.23456789)
</code>
The fixture file looks like this:
<code>[{'model': 'myapp.MyModel', 'pk': 1, 'fields': {'point': SRID=4326;POINT(1.23456789 1.23456789)}},]
</code>
However, I get the following error when I try to load it: 
<blockquote>
<p>django.core.serializers.base.DeserializationError: Problem installing fixture '/path/to/fixture/file': Could not load myapp_mymodel(1): (point_field) invalid input syntax for type geometry</p>
</blockquote>


A:

 Django fixtures are in JSON format, so you need to use <code>"SRID=4326;POINT(1.23456789 1.23456789)"</code>.  Also, you need to use <code>"point"</code>, not <code>"Point"</code>.  This should work:  

    [{'model': 'myapp_mymodel', 'pk': 1, 'fields': {'point': "SRID=4326;POINT(1 23)"}}]

Faylasha dhibcaha

File pointfile waa qaab-dhismeedka xogta loo isticmaalo qaab dhismeedka shabakadda Django si loo kaydiyo macluumaadka ku saabsan degelka. File point ka kooban yahay macluumaadka ku saabsan hal mareeg, sida URL, magaca domain, iyo xog badan oo kale.

Qaabka qiyamka ee Django

Qaabka qiyamka ee Django waa hab lagu qeexo tiro qiyam ah oo mashruucaagu u hoggaansami doono. Tan waxa loo isticmaali karaa in lagu diiwaangeliyo falsafada mashruucaaga, ama in lagaa caawiyo inaad go'aan ka gaadho sida mashruucaaga loo maamulayo.

Si aad u isticmaasho qaabka qiyamka ee Django, marka hore samee cutubka la yiraahdo qiyamka . Qaybtan, waxaad ku qeexi doontaa dhammaan qiyamka uu mashruucaagu u hoggaansami doono. Waxaad ku dhejin kartaa dukumeenti kasta oo aad rabto cutubkan, laakiin hadda, kaliya sii waxa ku jira:

ka django.conf dejimaha soo dejinta django.core.management soo dejinta call_command ka django.utils soo dejinta timezone difaaca ugu weyn (): # Deji qaar ka mid ah goobaha caalamiga ah. goobaha . SETTINGS_MODULE = "qiimaha" # Qeex qiyamka uu mashruucani raacayo. myvalues ​​= {' code of conduct' : 'Waxaa naga go'an inaan qof walba siino khibrad aan dhibaatayn.' , } call_command ( "echo %s > /etc/hosts"% myvalues ​​['code of conduct'], timezone = time zone

Waa maxay qalabyada

Qalabku waa hab lagu kaydiyo xogta kaydka xogta oo ay isticmaali karaan codsiyada Django. Waxay kuu oggolaanayaan inaad qeexdo qiyamka gaarka ah ee goobaha ku jira miiska xogta, ka dibna adeegso qiyamkaas markaad abuurto tusaalooyin shayga moodeelka.

Related posts:

Leave a Comment