I am trying to create version for REST application. Here is my URL Examle
www.myapi.com/foo [default version] www.myapi.com/v1/foo [version one]This is the project structure
├── __init__.py ├── settings.py ├── urls.py ├── default_app │ ├── __init__.py │ ├── serializer.py │ ├── models.py │ ├── views.py │ ├── urls.py │ └── v1_app ├── __init__.py ├── serializer.py ├── models.py ├── views.py ├── urls.py
default_app urls.py
from django.conf.urls import * from default_app import views as df_views from rest_framework import routers router = routers.DefaultRouter() router.register(r'foo', df_views.viewname, "foo") urlpatterns = router.urlsv1_app urls.py
from django.conf.urls import * from v1_app import views as ver_views from rest_framework import routers router = routers.DefaultRouter() router.register(r'foo', ver_views.viewname, "foo") urlpatterns = router.urlsmain file for urls.py
from django.conf.urls import patterns, include, url from defualt_app import urls as default_urls from v1_app import urls as v1_urls from django.contrib.staticfiles.urls import staticfiles_urlpatterns urlpatterns += patterns('', url(r'^', include(default_urls, namespace="default")), url(r'^v1/', include(v1_urls, namespace="v1")) ) urlpatterns += staticfiles_urlpatterns()My issue is, when i using simple url without any prefix then it is working
www.myapi.com/foo
and when i used version prefix v1 or v2 then it throws error [Page not found (404)]
www.myapi.com/v1/foo
I got this idea from this link http://stackoverflow.com/a/21839842/1558544
If I don't use middleware class then is this possible to get same result?
Thank you
You received this message because you are subscribed to the Google Groups "Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscribe@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
Visit this group at http://groups.google.com/group/django-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/42d759fb-19f2-483f-a979-1b61cce51d57%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
No comments:
Post a Comment