Django - 如何允许用户以科学记数法输入小数?
我希望用户能够输入标准十进制值(如 1.51)或以科学计数法输入值(如 4.08E+13)。
我在模型中设置了一个小数字段,但当我尝试输入上面的示例时,我收到此验证消息:
“确保小数位数不超过 3 位。”
旁注:
我确实注意到 Python 已经支持这种格式:
>>> from decimal import Decimal
>>> print Decimal("4.08E+13")
4.08E+13
所以也许在 Django 中设置一些东西不会太难?
I want users to be able to enter a standard decimal value like 1.51 or enter a value in scientific notation like 4.08E+13.
I set up a decimal field in my model but when I try to enter the above example I get this validation message:
"Ensure that there are no more than 3 decimal places."
Side note:
I did notice that Python already supports this format:
>>> from decimal import Decimal
>>> print Decimal("4.08E+13")
4.08E+13
So maybe it won't be too hard to set something up in Django?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这看起来像一个 Django bug,DecimalField.validate() 对于正指数来说是错误的:
您可能想要提交一个 bug。
This looks like a Django bug, DecimalField.validate() is wrong for positive exponents:
You may want to file a bug.