即使我把這個線在我的settings.py:Django的ValueError異常:無法將字符串轉換爲浮動
LANGUAGE_CODE = 'pt-br'
TIME_ZONE = 'America/Sao_Paulo'
USE_I18N = True
USE_L10N = True
USE_TZ = True
DECIMAL_SEPARATOR = ','
DATE_INPUT_FORMATS = ['%d/%m/%Y']
DATE_FORMAT = r'd/m/Y'
,那麼具體:https://docs.djangoproject.com/en/1.10/ref/settings/#decimal-separator
即使本地化設置爲False也不會承認(雖然語言代碼應該已經設置小數點分隔符爲逗號)
Django的仍然將無法識別逗號作爲小數點分隔符
實際呃ror:
ValueError: could not convert string to float: '123,123'
該字段只是默認的FloatField,我沒有使用表單。
什麼可能導致它不能識別逗號?
這是views.py代碼:
def new_object(request):
data = json.loads(request.body.decode("utf-8"))
model_name = data.get('model')
model = apps.get_model(app_label='cadastroimoveis', model_name=model_name)
obj = model(**data.get('fields'))
obj.save()
所發送的請求僅僅是一個字段作爲字符串JSON
編輯:我只是檢查,甚至沒有它的工作的DATE_INPUT_FORMATS,它是仍在等待默認值
也許是這樣的原因:*請注意,如果USE_L10N設置爲True,則語言環境規定的格式具有更高的優先級並將被應用。 –
@nik_m已經嘗試過,但我的語言環境設置實際上應該定義逗號作爲分隔符 – Mojimi
已經看到這個[這個問題](http://stackoverflow.com/questions/1779288/how-do-i-use-python-to-轉換-A-字符串到一個號碼,如果-IT-具有-逗號,在-IT-AS-TH)? –