1

我按照此处的指南将版本控制添加到我们的 API。这是看起来的urls.py样子:

from django.conf.urls import url
from django.contrib import admin
from django.urls import path

from api import views

urlpatterns = [    url(
        r'^(?P<version>(v1|v2))/foo/bar',
        views.foo_bar,
    ),
]

但是,当我使用 URL 访问http://localhost:5555/v1/foo/bar我的 API 时,出现错误:

TypeError at /v1/foo/bar
foo_bar() got an unexpected keyword argument 'version'
4

1 回答 1

3

你的观点很可能foo_bar不接受这个论点version

需要定义为:

def foo_bar(request, version):
    ...
于 2019-04-25T17:58:24.260 回答