我想在django中的方法中使用url的数据

时间:2018-03-23 09:19:18

标签: python django

我想在方法中使用url的数据。现在urls.py是

from django.urls import path
from . import views

urlpatterns = [
    path('data/<int:id>', views.data, name='data'),
]

我在views.py中写道

@csrf_exempt
def data(request,<int:id>):
    results = Users.objects.filter(user=id)
    print(results)
    return HttpResponse('<h1>OK</h1>')

但是我收到了错误formal parameter name expected in <int:id> of (request,<int:id>)。如果我访问http://127.0.0.1:8000/data/3,我理想的系统打印用户数据的id = 3。我无法理解我是如何做到的。我的代码出了什么问题?

2 个答案:

答案 0 :(得分:4)

您无法在<int:id>的参数中执行data,这是无效的语法。它应该只是一个正常的参数:

def data(request, id):

答案 1 :(得分:0)

正如@Daniel Roseman所说,您只需在id的参数中提供data

赞:

def data(request, id):

和网址中:

from django.urls import path
from . import views

urlpatterns = [
    path('data/<id>', views.data, name='data'),
]