我想在 Django URL 模式中使用带小数点的数字,但我不确定这是否真的可行(我不是正则表达式专家)。
这是我想用于 URL 的内容:
/item/value/0.01
/item/value/0.05
这些 URL 会显示值(value) 0.01 美元或 0.05 美元的商品。当然,我可以采取简单的方法并以美分为单位传递值,因此它将是/item/value/1,但我希望在我看来以十进制数据类型而不是整数形式接收参数(并且在某些时候我可能不得不处理几分之一美分)。是否可以在 Django URL 模式中编写一个正则表达式来处理这个问题?
最佳答案
可以是这样的
urlpatterns = patterns('',
(r'^item/value/(?P<value>\d+\.\d{2})/$', 'myapp.views.byvalue'),
... more urls
)
url 不应以斜杠开头。
在 View 中你可以有函数:
def byvalue(request,value='0.99'):
try:
value = float(value)
except:
...
关于python - 如何在 Django URL 模式中使用小数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1128693/