2017-01-22 1 views
0

필드를 다시 캐스팅하려고하면 다음 오류가 발생합니다.Django에서 작동하도록 MYSQL Latin-1 GEOMETRY 필드를 UTF8로 변환하는 방법은 무엇입니까?

UPDATE <table> SET geo_field = CONVERT(CAST(CONVERT(geo_field USING latin1) AS BINARY) USING utf8); 

[Err] 1416 - Cannot get geometry object from data you send to the GEOMETRY field 

저는 datasump json에 django 1.9를 사용하려고 시도하고 있으며 latin-1 문자를 질식시킵니다.

저는 mysql.gis 백엔드를 사용하고 있습니다.

파이썬에서 원시 커서를 사용하려고해도 작동하지 않았습니다.

def convert_latin_uft8(badfields, table, host, user, passwd, db): 
    import MySQLdb 
    con = MySQLdb.connect(host=host, user=user, passwd=passwd, db=db) 
    cur = con.cursor() 
    cur.execute("SELECT * FROM `{0}`;".format(table)) 
    for item in cur.fetchall(): 
     for field in badfields: 
      data =item[field].decode('latin1').encode('utf8') 
      print data 

막혔습니다. 도움을 주시면 큰 감사를드립니다.

답변

0

paths 필드에 부적절한 모델 유형 세트가 있습니다.

paths = models.PolygonField() 마법처럼 일했다!

관련 문제