django執行遷移文件報錯struct.error: unpack requires a buffer of 4 bytes


問題:

我使用的版本說明

      django:2.2版本
      djangorestframework:3.11版本
      python3.6版本

解決

查了下資料,沒有很詳細的說明,我是因為需要使用繼承django自帶的User模型並自定義一個模型類,需要配置AUTH_USER_MODEL,但是我不是第一數據庫遷移的時候就配置了這個,所以我需要把所有的表刪了,而且要把所有的遷移文件刪了,再重新執行python manage.py makemigration跟migrate,但是執行makemigrations的時候出現了這個錯誤,找了半天都沒有相同的問題,有一個大概是跟我差不多,但是它是換了djangorestframework的版本解決了,我試着也照他說的覆蓋版本,但是沒用。然后找了個大概相似的問題,看了下解決辦法,試了了,成功了。

      解決辦法:
      第一種辦法:把settings.py文件中的USE_I18N改為False再執行遷移,就可以了。具體是什么原因我也不清楚,因為我看別人的視頻中3.7版本跟django2.2這樣做的時候不會報這種錯誤。
      第二種辦法:重新創建virtualenv環境,這個暫時沒有試過,如果第一種辦法沒有解決的,可以嘗試下第二種辦法。
                  

大概相似問題的解決辦法鏈接

相關解決鏈接


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM