UnicodeEncodeError: 'decimal' codec can't encode character u'\u7537' in position 0: invalid decimal
前端向django后端post数据时报错:
UnicodeEncodeError: 'decimal' codec can't encode character u'\u7537' in position 0: invalid decimal Unicode string
[08/Aug/2018 15:02:00] "POST /wx_basic_data HTTP/1.1" 500 126512
在save数据时出现了‘十进制Unicode字符串无效’这样的很奇怪的错误,看了一下view:
user_sex = wx_basic_data['sex'],
再看了一下对应的models.py:
SEX_CHOICE=(
(0, '男'),
(1, '女'),
)
user_sex = models.IntegerField(verbose_name='性别', choices=SEX_CHOICE)
原来自己放了个低级错误直接把前端返回的'男'保存进了数据, 而使用选择元组应该保存的是数字而不是字符串。
因而修改一下:
user_sex = 0 if (wx_basic_data['sex'] == u'男') else 1,
问题解决。
版权声明
本文章由作者“衡于墨”创作,转载请注明出处,未经允许禁止用于商业用途
发布时间:2018年08月08日 15:28:40
备案号:
闽ICP备19015193号-1
关闭特效
评论区#
还没有评论哦,期待您的评论!
引用发言