mirror of
				https://github.com/encode/django-rest-framework.git
				synced 2025-11-04 01:47:59 +03:00 
			
		
		
		
	
		
			
				
	
	
		
			36 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
Alternative frameworks & Why Django REST framework
 | 
						|
==================================================
 | 
						|
 | 
						|
Alternative frameworks
 | 
						|
----------------------
 | 
						|
 | 
						|
There are a number of alternative REST frameworks for Django:
 | 
						|
 | 
						|
* `django-piston <https://bitbucket.org/jespern/django-piston/wiki/Home>`_ is very mature, and has a large community behind it.  This project was originally based on piston code in parts.
 | 
						|
* `django-tasypie <https://github.com/toastdriven/django-tastypie>`_ is also very good, and has a very active and helpful developer community and maintainers.
 | 
						|
* Other interesting projects include `dagny <https://github.com/zacharyvoase/dagny>`_ and `dj-webmachine <http://benoitc.github.com/dj-webmachine/>`_
 | 
						|
 | 
						|
 | 
						|
Why use Django REST framework?
 | 
						|
------------------------------
 | 
						|
 | 
						|
The big benefits of using Django REST framework come down to:
 | 
						|
 | 
						|
1. It's based on Django's class based views, which makes it simple, modular, and future-proof.
 | 
						|
2. It stays as close as possible to Django idioms and language throughout.
 | 
						|
3. The browse-able API makes working with the APIs extremely quick and easy.
 | 
						|
 | 
						|
 | 
						|
Why was this project created?
 | 
						|
-----------------------------
 | 
						|
 | 
						|
For me the browse-able API is the most important aspect of Django REST framework.
 | 
						|
 | 
						|
I wanted to show that Web APIs could easily be made Web browse-able,
 | 
						|
and demonstrate how much better browse-able Web APIs are to work with.
 | 
						|
 | 
						|
Being able to navigate and use a Web API directly in the browser is a huge win over only having command line and programmatic
 | 
						|
access to the API.  It enables the API to be properly self-describing, and it makes it much much quicker and easier to work with.
 | 
						|
There's no fundamental reason why the Web APIs we're creating shouldn't be able to render to HTML as well as JSON/XML/whatever,
 | 
						|
and I really think that more Web API frameworks *in whatever language* ought to be taking a similar approach.
 |