You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django视图函数获取URL参数报错,如何修正代码?

解决Django视图函数获取URL参数的报错问题

嘿,我一眼就瞅出问题所在啦!你在视图函数的参数定义里写了<int:id>,这可是Django URL配置里的路径转换器语法,不能直接放到视图函数的参数里用的~

错误原因

视图函数的参数只需要接收参数名称就行,<int:>是告诉Django“把这个位置的URL片段转成整数类型”的规则,这个规则只在urls.py里生效,视图里直接用参数名id就好。

修正后的代码

你的urls.py是没问题的,不用改动。只需要修改views.py里的视图函数:

from django.http import HttpResponse
from django.views.decorators.csrf import csrf_exempt
from .models import Users  # 别忘了导入你的Users模型哦

@csrf_exempt
def data(request, id):  # 这里直接写id,去掉<int:>前缀
    # 注意:如果你的Users模型里是用id字段匹配,这里可以改成filter(id=id),根据你的实际模型结构调整
    results = Users.objects.filter(user=id)
    print(results)
    return HttpResponse('<h1>OK</h1>')

验证效果

现在你访问http://127.0.0.1:8000/data/3时,Django会自动把URL里的3作为整数类型的id参数传递给视图函数,控制台就能正确打印出对应的数据啦~

内容的提问来源于stack exchange,提问作者user9341676

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 03:44:59