Merge pull request #3037 from jpadilla/master

Fix versioning urls
This commit is contained in:
Xavier Ordoquy 2015-06-16 21:34:31 +02:00
commit 5524339e0e
3 changed files with 6 additions and 6 deletions

View File

@ -3,7 +3,7 @@ source: versioning.py
# Versioning
> Versioning an interface is just a "polite" way to kill deployed clients.
>
>
> — [Roy Fielding][cite].
API versioning allows you to alter behavior between different clients. REST framework provides for a number of different versioning schemes.
@ -117,12 +117,12 @@ Your URL conf must include a pattern that matches the version with a `'version'`
urlpatterns = [
url(
r'^(?P<version>{v1,v2})/bookings/$',
r'^(?P<version>[v1|v2]+)/bookings/$',
bookings_list,
name='bookings-list'
),
url(
r'^(?P<version>{v1,v2})/bookings/(?P<pk>[0-9]+)/$',
r'^(?P<version>[v1|v2]+)/bookings/(?P<pk>[0-9]+)/$',
bookings_detail,
name='bookings-detail'
)

View File

@ -59,8 +59,8 @@ class URLPathVersioning(BaseVersioning):
An example URL conf for two views that accept two different versions.
urlpatterns = [
url(r'^(?P<version>{v1,v2})/users/$', users_list, name='users-list'),
url(r'^(?P<version>{v1,v2})/users/(?P<pk>[0-9]+)/$', users_detail, name='users-detail')
url(r'^(?P<version>[v1|v2]+)/users/$', users_list, name='users-list'),
url(r'^(?P<version>[v1|v2]+)/users/(?P<pk>[0-9]+)/$', users_detail, name='users-detail')
]
GET /1.0/something/ HTTP/1.1

View File

@ -128,7 +128,7 @@ class TestURLReversing(UsingURLPatterns, APITestCase):
urlpatterns = [
url(r'^v1/', include(included, namespace='v1')),
url(r'^another/$', dummy_view, name='another'),
url(r'^(?P<version>[^/]+)/another/$', dummy_view, name='another'),
url(r'^(?P<version>[v1|v2]+)/another/$', dummy_view, name='another'),
]
def test_reverse_unversioned(self):