Isonjululwe: ifomati yexabiso lendawo ye-django yolungiso

Ingxaki ephambili kukuba akwenzeki ukuba uchaze ifomathi yendawo yesiko yolungiso.

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)"}}]

Iifayile zeengongoma

I-pointfile yisakhiwo sedatha esisetyenziswe kwisakhelo sewebhu ye-Django ukugcina ulwazi malunga newebhusayithi. I-pointfile inolwazi malunga newebhusayithi enye, njenge-URL, igama lesizinda, kunye nenye imethadatha.

Ubume bexabiso kwi-Django

Ifomati yeMigangatho kwi-Django yindlela yokuchaza uluhlu lwamaxabiso apho iprojekthi yakho iya kubambelela kuyo. Oku kungasetyenziselwa ukubhala ifilosofi yeprojekthi yakho, okanye ukukunceda wenze izigqibo malunga nendlela iprojekthi yakho ekufuneka iqhutywe ngayo.

Ukusebenzisa ifomati yamaxabiso kwi-Django, yenza kuqala umnqongo obizwa ngokuba ngamaxabiso . Kule modyuli, uya kuchaza onke amaxabiso iprojekthi yakho eya kubambelela kuwo. Ungabeka nawaphi na amaxwebhu owafunayo kule modyuli, kodwa okwangoku, yinike imixholo elandelayo:

ukusuka django.conf izicwangciso zokungenisa ukusuka django.core.management ngenisa call_command ukusuka django.utils ngenisa indawo yexesha def main (): # Seta ezinye iisetingi zehlabathi. izicwangciso . SETTINGS_MODULE = "amaxabiso" # Chaza amaxabiso alandelayo le projekthi. myvalues ​​= { 'ikhowudi yokuziphatha' : 'Sizibophelele ekuboneleleni ngamava angenakuxhatshazwa kuwo wonke umntu.' , } call_command ( “echo %s > /etc/hosts” % myvalues ​​[ 'code of conduct' ], timezone = timezone . ngoku ()) ukuba __name__ == “__main__” : eyona ()

Yintoni na izixhobo

Ukulungiswa kuyindlela yokugcina idatha kwisiseko sedatha esingasetyenziswa zizicelo ze-Django. Bakuvumela ukuba uchaze amaxabiso athile emihlaba kwitafile yedatha, kwaye ke usebenzise loo maxabiso xa usenza imizekelo yomzekelo wento.

Izithuba ezihambelanayo:

Shiya Comment