首页 > 解决方案 > ValueError:int() 的无效文字,基数为 10:终端中的“favicon.ico”

问题描述

我正在构建博客应用程序。而且我正在使用 Django 版本:- 3.8.1。我被困在一个错误上。

视图.py

def detail_view(request,id):
    id = int(id)
    data = get_object_or_404(Post,id=id)

    context = {'data':data,}
    return render(request, 'show_more.html', context )

网址.py

path('<id>',views.detail_view,name='detail_view'),

show_more.html

{% extends "base.html" %}
{% load humanize %}
{% load post_tags %}



<br>
<a>Posted at - {{ data.date_added }}</a>
<br>

<br>
  <a>{{ data.blog_post_title }}</a>
  <br>

错误

当我启动服务器。一切正常。每个页面都可以正常打开,但是当我看到终端时,它会ValueError: invalid literal for int() with base 10: 'favicon.ico'在我在浏览器中单击的每个页面的终端中显示。

任何帮助,将不胜感激 。先感谢您。

标签: pythondjangodjango-views

解决方案


尝试这个

int:section 匹配一串十进制数字并将值转换为 int。

path('<int:id>',views.detail_view,name='detail_view'),

参考这个-> https://docs.djangoproject.com/en/3.1/ref/urls/


推荐阅读