Django 管理,自定义视图错误:以 10 为基数的 int() 的文字无效
我正在尝试在 Django 管理中创建自定义视图。我正在从这个网站阅读简单的 Django 管理预览< /a>,但我有一个问题:
ValueError: invalid literal for int() with base 10: '13/preview'
这是我的 url.py:
url(r'^admin/diligencias/diligencia/(?P<object_id>\d+)/preview/$','preview'),
这是我的 view.py:
@staff_member_required
def preview(request, object_id):
return object_detail(request, object_id=object_id,queryset=Diligencia.objects.all(), template_object_name = 'diligencia', )
这个错误是什么意思?
I'm trying to make a custom view in Django admin. I'm reading from this site, Simple Django Admin Preview, but I have a problem:
ValueError: invalid literal for int() with base 10: '13/preview'
Here is my url.py:
url(r'^admin/diligencias/diligencia/(?P<object_id>\d+)/preview/
Here is my view.py:
@staff_member_required
def preview(request, object_id):
return object_detail(request, object_id=object_id,queryset=Diligencia.objects.all(), template_object_name = 'diligencia', )
What does this error mean?
,'preview'),
Here is my view.py:
What does this error mean?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
加布里埃尔所说的是不正确的。我的猜测是问题在于您的视图位于 URLConf 中其他管理视图之后,因此该 URL 被 Django amdin 使用的“13/preview”可能是有效 PK 的包罗万象的视图捕获,因此您应该将此 URL 移至其他管理 URL 之上。
What Gabriel says is incorrect. My guess is the problem is that your view is after the other admin views in the URLConf, therefore this URL gets caught by a catchall one the Django amdin uses the "13/preview" could be a valid PK, therefore you should move this URL above the other admin ones.
该请求不是由该 URLconf 接收,而是由默认管理视图接收,该视图期望应用程序/模型之后的所有内容都是主键的整数值。
您可能需要将您的 URL 在 URL 列表中移到更高的位置,以便它位于包含管理 URL 的 URL 之前。
The request isn't being picked up by that URLconf, but by the default admin view, which expects everything after the app/model to be the integer value of the primary key.
You may need to move your URL higher in the list of URLs, so that it comes before the one that includes the admin urls.