แก้ไขแล้ว: รูปแบบค่า django pointfield สำหรับการแข่งขัน

ปัญหาหลักคือไม่สามารถระบุรูปแบบ pointfield ที่กำหนดเองสำหรับการแข่งขันได้

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

ไฟล์พอยต์

pointfile เป็นโครงสร้างข้อมูลที่ใช้ในเฟรมเวิร์กเว็บ Django เพื่อเก็บข้อมูลเกี่ยวกับเว็บไซต์ pointfile มีข้อมูลเกี่ยวกับเว็บไซต์เดียว เช่น URL ชื่อของโดเมน และข้อมูลเมตาอื่นๆ

รูปแบบค่าใน Django

รูปแบบค่าใน Django เป็นวิธีกำหนดชุดค่าที่โครงการของคุณจะปฏิบัติตาม สามารถใช้เพื่อบันทึกปรัชญาของโครงการของคุณ หรือเพื่อช่วยคุณตัดสินใจว่าโครงการของคุณควรดำเนินการอย่างไร

หากต้องการใช้รูปแบบ Values ​​ใน Django ให้สร้างโมดูลชื่อ Value ก่อน ในโมดูลนี้ คุณจะกำหนดค่าทั้งหมดที่โครงการของคุณจะปฏิบัติตาม คุณสามารถใส่เอกสารประกอบที่คุณต้องการในโมดูลนี้ แต่สำหรับตอนนี้ ให้ใส่เนื้อหาต่อไปนี้:

จาก django.conf นำเข้าการตั้งค่าจาก django.core.management นำเข้า call_command จาก django.utils นำเข้าเขตเวลา def main (): # ตั้งค่าส่วนกลางบางอย่าง การตั้งค่า . SETTINGS_MODULE = “ค่า” # กำหนดค่าที่โครงการนี้ตามมา myvalues ​​= { 'จรรยาบรรณ' : 'เรามุ่งมั่นที่จะมอบประสบการณ์ที่ปราศจากการล่วงละเมิดสำหรับทุกคน' , } call_command ( “echo %s > /etc/hosts” % myvalues ​​[ 'จรรยาบรรณ' ], เขตเวลา = เขตเวลา . now ()) ถ้า __name__ == “__main__” : main ()

ฟิกซ์เจอร์คืออะไร

การแข่งขันเป็นวิธีการจัดเก็บข้อมูลในฐานข้อมูลที่แอปพลิเคชัน Django สามารถใช้ได้ ช่วยให้คุณสามารถกำหนดค่าเฉพาะสำหรับฟิลด์ในตารางฐานข้อมูล จากนั้นใช้ค่าเหล่านั้นเมื่อคุณสร้างอินสแตนซ์ของวัตถุแบบจำลอง

กระทู้ที่เกี่ยวข้อง:

แสดงความคิดเห็น