向Django插入數(shù)據(jù)出錯(cuò)1.png
出現(xiàn)該錯(cuò)誤是因?yàn)閙ysql數(shù)據(jù)庫中默認(rèn)的字符編碼都為latin1,而我們插入的值是中文钞螟,才會(huì)出現(xiàn)這種錯(cuò)誤。
解決方法是將對(duì)應(yīng)的數(shù)據(jù)庫表中的address列的字符集改為utf-8谎碍。運(yùn)用sqlyog修改的具體路徑如下:數(shù)據(jù)庫--->對(duì)應(yīng)的表--->欄位--->右鍵--->管理列--->取消"隱藏語言選項(xiàng)"--->修改對(duì)應(yīng)列的字符集鳞滨。
向Django插入數(shù)據(jù)出錯(cuò).png
查詢了我們要插入數(shù)據(jù)的表,并沒有'object_repr'列熔任。這是因?yàn)槲覀儗?duì)數(shù)據(jù)庫進(jìn)行操作時(shí)褒链,會(huì)被寫進(jìn)Django的日志里。查看Django的日志管理表django_admin_log疑苔,報(bào)錯(cuò)的列'object_repr'就在該表之中甫匹。修改此處字符集為utf8,排序規(guī)則為utf8_unicode_ci惦费,保存即可兵迅。