我希望构造以下网址Django和URL创建
domain/edit/xray/<id>/<image_name>
其中id是模型的id和IMAGE_NAME是图像的名称。
我有一个应用程序,将处理的图像编辑与自己的看法让说mypil
mypil.views
def edit_xray(request, id, image_name):
....code to get image by name
....model by id and edit image using PIL
model = Model.objects.get(pk=id)
项目/ urls.py
url(r'^edit/', include(mypil.urls))
mypil.urls
url(r'^xray/(?P<id>)\d+/(?P<image_name>)\w+\.\w{3}$', mypil.views.edit_xray)
但是,当我尝试查看编辑/ xray/1/image.jpg(id和图像都存在)时,我遇到此问题。
invalid literal for int() with base 10: ''
和追踪显示我上面
model=Model.objects.get(pk=id)
该行是否为空字符串(“”)意味着它不能正确地从URL解析ID?我的网址格式不正确吗?
编辑:哎呀我的眼睛....把\ d +需要和图像REG模式括号
url(r'^xray/(?P<id>\d+)/(?P<image_name>\w+\.\w{3})$,...)
对不起,张贴问题...(我如何删除我自己的问题里面? )
不要删除它,这不是一个坏问题。有人可能会再次犯同样的错误 – yuvi
这是真的吗?只是不够谨慎大声笑:) – Apostolos