DJANGO-a web framework (REST API) part-2
The REST api (representational state transfer) in django basically gives a common architecture for every platform.It means that if you want to run your web application run on android , windows ,IOS or at any other place then rest is a common API.
Requirements:
REST framework requires the following:
- Python (2.7, 3.4, 3.5, 3.6, 3.7)
- Django (1.11, 2.0, 2.1, 2.2)
We highly recommend and only officially support the latest patch release of each Python and Django series.
Installation:
Install using
pip
, including any optional packages you want...pip install djangorestframework
pip install markdown # Markdown support for the browsable API.
pip install django-filter # Filtering support
...or clone the project from github.
git clone https://github.com/encode/django-rest-framework
Add
'rest_framework'
to your INSTALLED_APPS
setting.INSTALLED_APPS = (
...
'rest_framework',
)
If you're intending to use the browsable API you'll probably also want to add REST framework's login and logout views. Add the following to your root
urls.py
file.urlpatterns = [
...
url(r'^api-auth/', include('rest_framework.urls'))
]
Note that the URL path can be whatever you want.
Example
Let's take a look at a quick example of using REST framework to build a simple model-backed API.
We'll create a read-write API for accessing information on the users of our project.
Any global settings for a REST framework API are kept in a single configuration dictionary named
REST_FRAMEWORK
. Start off by adding the following to your settings.py
module:REST_FRAMEWORK = {
# Use Django's standard `django.contrib.auth` permissions,
# or allow read-only access for unauthenticated users.
'DEFAULT_PERMISSION_CLASSES': [
'rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly'
]
}
Don't forget to make sure you've also added
rest_framework
to your INSTALLED_APPS
.
We're ready to create our API now. Here's our project's root
urls.py
module:from django.conf.urls import url, include
from django.contrib.auth.models import User
from rest_framework import routers, serializers, viewsets
# Serializers define the API representation.
class UserSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = User
fields = ('url', 'username', 'email', 'is_staff')
# ViewSets define the view behavior.
class UserViewSet(viewsets.ModelViewSet):
queryset = User.objects.all()
serializer_class = UserSerializer
# Routers provide an easy way of automatically determining the URL conf.
router = routers.DefaultRouter()
router.register(r'users', UserViewSet)
# Wire up our API using automatic URL routing.
# Additionally, we include login URLs for the browsable API.
urlpatterns = [
url(r'^', include(router.urls)),
url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework'))
]
You can now open the API in your browser at http://127.0.0.1:8000/, and view your new 'users' API. If you use the login control in the top right corner you'll also be able to add, create and delete users from the system.
Comments
This concept is a good way to enhance the knowledge.thanks for sharing..
Django Training in Hyderabad
Python Django Online Training
Python Django Training in Hyderabad
Best Python Training Online
Python Online Classes