diff options
48 files changed, 730 insertions, 4 deletions
diff --git a/api-guide/authentication/index.html b/api-guide/authentication/index.html index c30a7aa4..b2b68960 100644 --- a/api-guide/authentication/index.html +++ b/api-guide/authentication/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/content-negotiation/index.html b/api-guide/content-negotiation/index.html index 46a240ba..9ae7563b 100644 --- a/api-guide/content-negotiation/index.html +++ b/api-guide/content-negotiation/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/exceptions/index.html b/api-guide/exceptions/index.html index f184e9ba..6a6551ec 100644 --- a/api-guide/exceptions/index.html +++ b/api-guide/exceptions/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/fields/index.html b/api-guide/fields/index.html index c2575416..29c302cd 100644 --- a/api-guide/fields/index.html +++ b/api-guide/fields/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/filtering/index.html b/api-guide/filtering/index.html index a2f9548c..185b44d3 100644 --- a/api-guide/filtering/index.html +++ b/api-guide/filtering/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/format-suffixes/index.html b/api-guide/format-suffixes/index.html index 5d0a93fb..facede7b 100644 --- a/api-guide/format-suffixes/index.html +++ b/api-guide/format-suffixes/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/generic-views/index.html b/api-guide/generic-views/index.html index 100ea700..62b833d5 100644 --- a/api-guide/generic-views/index.html +++ b/api-guide/generic-views/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/pagination/index.html b/api-guide/pagination/index.html index 870035c2..11ef3d27 100644 --- a/api-guide/pagination/index.html +++ b/api-guide/pagination/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/parsers/index.html b/api-guide/parsers/index.html index 39b505d7..8e362b95 100644 --- a/api-guide/parsers/index.html +++ b/api-guide/parsers/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/permissions/index.html b/api-guide/permissions/index.html index 893d3957..45efddf9 100644 --- a/api-guide/permissions/index.html +++ b/api-guide/permissions/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/relations/index.html b/api-guide/relations/index.html index 2c4fe9b6..239eec48 100644 --- a/api-guide/relations/index.html +++ b/api-guide/relations/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/renderers/index.html b/api-guide/renderers/index.html index 86223be3..7c9ae852 100644 --- a/api-guide/renderers/index.html +++ b/api-guide/renderers/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/requests/index.html b/api-guide/requests/index.html index 679b036b..88833ed5 100644 --- a/api-guide/requests/index.html +++ b/api-guide/requests/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/responses/index.html b/api-guide/responses/index.html index be8cca9c..8ca4cfc0 100644 --- a/api-guide/responses/index.html +++ b/api-guide/responses/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/reverse/index.html b/api-guide/reverse/index.html index 08399151..f15c35d4 100644 --- a/api-guide/reverse/index.html +++ b/api-guide/reverse/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/routers/index.html b/api-guide/routers/index.html index e204b48e..bc95fe9d 100644 --- a/api-guide/routers/index.html +++ b/api-guide/routers/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/serializers/index.html b/api-guide/serializers/index.html index 4c03b25f..13bc661d 100644 --- a/api-guide/serializers/index.html +++ b/api-guide/serializers/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/settings/index.html b/api-guide/settings/index.html index 654807d8..94050822 100644 --- a/api-guide/settings/index.html +++ b/api-guide/settings/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/status-codes/index.html b/api-guide/status-codes/index.html index d9ff28cb..e2138d5e 100644 --- a/api-guide/status-codes/index.html +++ b/api-guide/status-codes/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/testing/index.html b/api-guide/testing/index.html index f456ac21..f3b6d005 100644 --- a/api-guide/testing/index.html +++ b/api-guide/testing/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/throttling/index.html b/api-guide/throttling/index.html index f8a66679..5b8c6df0 100644 --- a/api-guide/throttling/index.html +++ b/api-guide/throttling/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/validators/index.html b/api-guide/validators/index.html index 70b680c1..5ae6f03b 100644 --- a/api-guide/validators/index.html +++ b/api-guide/validators/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/views/index.html b/api-guide/views/index.html index 1b832edb..231854d9 100644 --- a/api-guide/views/index.html +++ b/api-guide/views/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/api-guide/viewsets/index.html b/api-guide/viewsets/index.html index 0ecde797..a0d4251e 100644 --- a/api-guide/viewsets/index.html +++ b/api-guide/viewsets/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> @@ -252,6 +252,10 @@ </li> <li > + <a href="topics/project-management/">Project management</a> + </li> + + <li > <a href="topics/rest-framework-2-announcement/">2.0 Announcement</a> </li> @@ -622,6 +626,7 @@ urlpatterns = [ <li><a href="topics/rest-hypermedia-hateoas/">REST, Hypermedia & HATEOAS</a></li> <li><a href="topics/third-party-resources/">Third Party Resources</a></li> <li><a href="topics/contributing/">Contributing to REST framework</a></li> +<li><a href="topics/project-management/">Project management</a></li> <li><a href="topics/rest-framework-2-announcement/">2.0 Announcement</a></li> <li><a href="topics/2.2-announcement/">2.2 Announcement</a></li> <li><a href="topics/2.3-announcement/">2.3 Announcement</a></li> diff --git a/topics/2.2-announcement/index.html b/topics/2.2-announcement/index.html index eaa1db10..d25fb362 100644 --- a/topics/2.2-announcement/index.html +++ b/topics/2.2-announcement/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../project-management">Project management</a> + </li> + + <li > <a href="../rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/topics/2.3-announcement/index.html b/topics/2.3-announcement/index.html index 881ffff6..12dc5ba1 100644 --- a/topics/2.3-announcement/index.html +++ b/topics/2.3-announcement/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../project-management">Project management</a> + </li> + + <li > <a href="../rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/topics/2.4-announcement/index.html b/topics/2.4-announcement/index.html index c811dc5c..fa96619a 100644 --- a/topics/2.4-announcement/index.html +++ b/topics/2.4-announcement/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../project-management">Project management</a> + </li> + + <li > <a href="../rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/topics/3.0-announcement/index.html b/topics/3.0-announcement/index.html index addb47cb..83dab0a8 100644 --- a/topics/3.0-announcement/index.html +++ b/topics/3.0-announcement/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../project-management">Project management</a> + </li> + + <li > <a href="../rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/topics/ajax-csrf-cors/index.html b/topics/ajax-csrf-cors/index.html index f9bb6392..0e22734f 100644 --- a/topics/ajax-csrf-cors/index.html +++ b/topics/ajax-csrf-cors/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../project-management">Project management</a> + </li> + + <li > <a href="../rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/topics/browsable-api/index.html b/topics/browsable-api/index.html index 2b3ed258..f82c984d 100644 --- a/topics/browsable-api/index.html +++ b/topics/browsable-api/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../project-management">Project management</a> + </li> + + <li > <a href="../rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/topics/browser-enhancements/index.html b/topics/browser-enhancements/index.html index 5f6e1ba7..30c36d72 100644 --- a/topics/browser-enhancements/index.html +++ b/topics/browser-enhancements/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../project-management">Project management</a> + </li> + + <li > <a href="../rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/topics/contributing/index.html b/topics/contributing/index.html index 8f259f52..62d0ff39 100644 --- a/topics/contributing/index.html +++ b/topics/contributing/index.html @@ -62,7 +62,7 @@ <div class="navbar-inner"> <div class="container-fluid"> <a class="repo-link btn btn-primary btn-small" href="https://github.com/tomchristie/django-rest-framework/tree/master">GitHub</a> - <a class="repo-link btn btn-inverse btn-small " rel="prev" href="../rest-framework-2-announcement"> + <a class="repo-link btn btn-inverse btn-small " rel="prev" href="../project-management"> Next <i class="icon-arrow-right icon-white"></i> </a> <a class="repo-link btn btn-inverse btn-small " rel="next" href="../third-party-resources"> @@ -252,6 +252,10 @@ </li> <li > + <a href="../project-management">Project management</a> + </li> + + <li > <a href="../rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/topics/credits/index.html b/topics/credits/index.html index 40c3ee52..c20448dd 100644 --- a/topics/credits/index.html +++ b/topics/credits/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../project-management">Project management</a> + </li> + + <li > <a href="../rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/topics/documenting-your-api/index.html b/topics/documenting-your-api/index.html index ae50add0..25c6210c 100644 --- a/topics/documenting-your-api/index.html +++ b/topics/documenting-your-api/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../project-management">Project management</a> + </li> + + <li > <a href="../rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/topics/kickstarter-announcement/index.html b/topics/kickstarter-announcement/index.html index 109fa946..f8bc71e0 100644 --- a/topics/kickstarter-announcement/index.html +++ b/topics/kickstarter-announcement/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../project-management">Project management</a> + </li> + + <li > <a href="../rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/topics/project-management/index.html b/topics/project-management/index.html new file mode 100644 index 00000000..036e23a0 --- /dev/null +++ b/topics/project-management/index.html @@ -0,0 +1,537 @@ +<!DOCTYPE html> +<html lang="en"> + +<head> + <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> + <meta charset="utf-8"> + <title>Project management - Django REST framework</title> + <link href="../../img/favicon.ico" rel="icon" type="image/x-icon"> + <link rel="canonical" href="http://www.django-rest-framework.org/topics/project-management/" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <meta name="description" content="Django, API, REST, Project management"> + <meta name="author" content="Tom Christie"> + + <!-- Le styles --> + <link href="../../css/prettify.css" rel="stylesheet"> + <link href="../../css/bootstrap.css" rel="stylesheet"> + <link href="../../css/bootstrap-responsive.css" rel="stylesheet"> + <link href="../../css/default.css" rel="stylesheet"> + + <!-- Le HTML5 shim, for IE6-8 support of HTML5 elements --> + <!--[if lt IE 9]> + <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script> + <![endif]--> + + <script type="text/javascript"> + var _gaq = _gaq || []; + _gaq.push(['_setAccount', 'UA-18852272-2']); + _gaq.push(['_trackPageview']); + + (function() { + var ga = document.createElement('script'); + ga.type = 'text/javascript'; + ga.async = true; + ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; + var s = document.getElementsByTagName('script')[0]; + s.parentNode.insertBefore(ga, s); + })(); + </script> + + <style> + span.fusion-wrap a { + display: block; + margin-top: 10px; + color: black; + } + a.fusion-poweredby { + display: block; + margin-top: 10px; + } + @media (max-width: 767px) { + div.promo { + display: none; + } + } + </style> +</head> +<body onload="prettyPrint()" class="-page"> + + <div class="wrapper"> + + <div class="navbar navbar-inverse navbar-fixed-top"> + <div class="navbar-inner"> + <div class="container-fluid"> + <a class="repo-link btn btn-primary btn-small" href="https://github.com/tomchristie/django-rest-framework/tree/master">GitHub</a> + <a class="repo-link btn btn-inverse btn-small " rel="prev" href="../rest-framework-2-announcement"> + Next <i class="icon-arrow-right icon-white"></i> + </a> + <a class="repo-link btn btn-inverse btn-small " rel="next" href="../contributing"> + <i class="icon-arrow-left icon-white"></i> Previous + </a> + <a class="repo-link btn btn-inverse btn-small" href="#searchModal" data-toggle="modal"><i class="icon-search icon-white"></i> Search</a> + <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse"> + <span class="icon-bar"></span> + <span class="icon-bar"></span> + <span class="icon-bar"></span> + </a> + <a class="brand" href="http://www.django-rest-framework.org">Django REST framework</a> + <div class="nav-collapse collapse"> + + <!-- Main navigation --> + <ul class="nav navbar-nav"> + <li ><a href="/">Home</a></li> + + <li class="dropdown"> + <a href="#" class="dropdown-toggle" data-toggle="dropdown">Tutorial <b class="caret"></b></a> + <ul class="dropdown-menu"> + + <li > + <a href="../../tutorial/quickstart">Quickstart</a> + </li> + + <li > + <a href="../../tutorial/1-serialization">1 - Serialization</a> + </li> + + <li > + <a href="../../tutorial/2-requests-and-responses">2 - Requests and responses</a> + </li> + + <li > + <a href="../../tutorial/3-class-based-views">3 - Class based views</a> + </li> + + <li > + <a href="../../tutorial/4-authentication-and-permissions">4 - Authentication and permissions</a> + </li> + + <li > + <a href="../../tutorial/5-relationships-and-hyperlinked-apis">5 - Relationships and hyperlinked APIs</a> + </li> + + <li > + <a href="../../tutorial/6-viewsets-and-routers">6 - Viewsets and routers</a> + </li> + + </ul> + </li> + + <li class="dropdown"> + <a href="#" class="dropdown-toggle" data-toggle="dropdown">API Guide <b class="caret"></b></a> + <ul class="dropdown-menu"> + + <li > + <a href="../../api-guide/requests">Requests</a> + </li> + + <li > + <a href="../../api-guide/responses">Responses</a> + </li> + + <li > + <a href="../../api-guide/views">Views</a> + </li> + + <li > + <a href="../../api-guide/generic-views">Generic views</a> + </li> + + <li > + <a href="../../api-guide/viewsets">Viewsets</a> + </li> + + <li > + <a href="../../api-guide/routers">Routers</a> + </li> + + <li > + <a href="../../api-guide/parsers">Parsers</a> + </li> + + <li > + <a href="../../api-guide/renderers">Renderers</a> + </li> + + <li > + <a href="../../api-guide/serializers">Serializers</a> + </li> + + <li > + <a href="../../api-guide/fields">Serializer fields</a> + </li> + + <li > + <a href="../../api-guide/relations">Serializer relations</a> + </li> + + <li > + <a href="../../api-guide/validators">Validators</a> + </li> + + <li > + <a href="../../api-guide/authentication">Authentication</a> + </li> + + <li > + <a href="../../api-guide/permissions">Permissions</a> + </li> + + <li > + <a href="../../api-guide/throttling">Throttling</a> + </li> + + <li > + <a href="../../api-guide/filtering">Filtering</a> + </li> + + <li > + <a href="../../api-guide/pagination">Pagination</a> + </li> + + <li > + <a href="../../api-guide/content-negotiation">Content negotiation</a> + </li> + + <li > + <a href="../../api-guide/format-suffixes">Format suffixes</a> + </li> + + <li > + <a href="../../api-guide/reverse">Returning URLs</a> + </li> + + <li > + <a href="../../api-guide/exceptions">Exceptions</a> + </li> + + <li > + <a href="../../api-guide/status-codes">Status codes</a> + </li> + + <li > + <a href="../../api-guide/testing">Testing</a> + </li> + + <li > + <a href="../../api-guide/settings">Settings</a> + </li> + + </ul> + </li> + + <li class="dropdown active"> + <a href="#" class="dropdown-toggle" data-toggle="dropdown">Topics <b class="caret"></b></a> + <ul class="dropdown-menu"> + + <li > + <a href="../documenting-your-api">Documenting your API</a> + </li> + + <li > + <a href="../ajax-csrf-cors">AJAX, CSRF & CORS</a> + </li> + + <li > + <a href="../browser-enhancements">Browser enhancements</a> + </li> + + <li > + <a href="../browsable-api">The Browsable API</a> + </li> + + <li > + <a href="../rest-hypermedia-hateoas">REST, Hypermedia & HATEOAS</a> + </li> + + <li > + <a href="../third-party-resources">Third Party Resources</a> + </li> + + <li > + <a href="../contributing">Contributing to REST framework</a> + </li> + + <li class="active" > + <a href=".">Project management</a> + </li> + + <li > + <a href="../rest-framework-2-announcement">2.0 Announcement</a> + </li> + + <li > + <a href="../2.2-announcement">2.2 Announcement</a> + </li> + + <li > + <a href="../2.3-announcement">2.3 Announcement</a> + </li> + + <li > + <a href="../2.4-announcement">2.4 Announcement</a> + </li> + + <li > + <a href="../3.0-announcement">3.0 Announcement</a> + </li> + + <li > + <a href="../kickstarter-announcement">Kickstarter Announcement</a> + </li> + + <li > + <a href="../release-notes">Release Notes</a> + </li> + + <li > + <a href="../credits">Credits</a> + </li> + + </ul> + </li> + + + </ul> + + </div> + <!--/.nav-collapse --> + + </div> + </div> + </div> + + <div class="body-content"> + <div class="container-fluid"> + + <!-- Search Modal --> + <div id="searchModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> + <div class="modal-header"> + <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> + <h3 id="myModalLabel">Documentation search</h3> + </div> + + <div class="modal-body"> + <!-- Custom google search --> + <script> + (function() { + var cx = '015016005043623903336:rxraeohqk6w'; + var gcse = document.createElement('script'); + gcse.type = 'text/javascript'; + gcse.async = true; + gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') + + '//www.google.com/cse/cse.js?cx=' + cx; + var s = document.getElementsByTagName('script')[0]; + s.parentNode.insertBefore(gcse, s); + })(); + </script> + <gcse:search></gcse:search> + </div> + + <div class="modal-footer"> + <button class="btn" data-dismiss="modal" aria-hidden="true">Close</button> + </div> + </div> + + <div class="row-fluid"> + + <div class="span3"> + <!-- TODO + <p style="margin-top: -12px"> + <a class="btn btn-mini btn-primary" style="width: 60px">« previous</a> + <a class="btn btn-mini btn-primary" style="float: right; margin-right: 8px; width: 60px;">next »</a> + </p> + --> + <div id="table-of-contents"> + <ul class="nav nav-list side-nav well sidebar-nav-fixed"> + + + + + + <li class="main"> + <a href="#project-management">Project management</a> + </li> + + + <li> + <a href="#maintenance-team">Maintenance team</a> + </li> + + <li> + <a href="#release-process">Release process</a> + </li> + + <li> + <a href="#project-ownership">Project ownership</a> + </li> + + + + + + + </ul> + + </div> + </div> + + <div id="main-content" class="span9"> + + + <h1 id="project-management">Project management</h1> +<blockquote> +<p>"No one can whistle a symphony; it takes a whole orchestra to play it"</p> +<p>— Halford E. Luccock</p> +</blockquote> +<p>This document outlines our project management processes for REST framework.</p> +<p>The aim is to ensure that the project has a high +<a href="http://en.wikipedia.org/wiki/Bus_factor">"bus factor"</a>, and can continue to remain well supported for the foreseeable future. Suggestions for improvements to our process are welcome.</p> +<hr /> +<h2 id="maintenance-team">Maintenance team</h2> +<p>We have a quarterly maintenance cycle where new members may join the maintenance team. We currently cap the size of the team at 5 members, and may encourage folks to step out of the team for a cycle to allow new members to participate.</p> +<h4 id="current-team">Current team</h4> +<p>The <a href="https://github.com/tomchristie/django-rest-framework/issues/2190">maintenance team for Q1 2015</a>:</p> +<ul> +<li><a href="https://github.com/tomchristie/">@tomchristie</a></li> +<li><a href="https://github.com/xordoquy/">@xordoquy</a> (Release manager.)</li> +<li><a href="https://github.com/carltongibson/">@carltongibson</a></li> +<li><a href="https://github.com/kevin-brown/">@kevin-brown</a></li> +<li><a href="https://github.com/jpadilla/">@jpadilla</a></li> +</ul> +<h4 id="maintenance-cycles">Maintenance cycles</h4> +<p>Each maintenance cycle is initiated by an issue being opened with the <code>Process</code> label.</p> +<ul> +<li>To be considered for a maintainer role simply comment against the issue.</li> +<li>Existing members must explicitly opt-in to the next cycle by check-marking their name.</li> +<li>The final decision on the incoming team will be made by <code>@tomchristie</code>.</li> +</ul> +<p>Members of the maintenance team will be added as collaborators to the repository.</p> +<p>The following template should be used for the description of the issue, and serves as the formal process for selecting the team.</p> +<pre><code>This issue is for determining the maintenance team for the *** period. + +Please see the [Project management](http://www.django-rest-framework.org/topics/project-management/) section of our documentation for more details. + +--- + +#### Renewing existing members. + +The following people are the current maintenance team. Please checkmark your name if you wish to continue to have write permission on the repository for the *** period. + +- [ ] @*** +- [ ] @*** +- [ ] @*** +- [ ] @*** +- [ ] @*** + +--- + +#### New members. + +If you wish to be considered for this or a future date, please comment against this or subsequent issues. +</code></pre> +<h4 id="responsibilities-of-team-members">Responsibilities of team members</h4> +<p>Team members have the following responsibilities.</p> +<ul> +<li>Add triage labels and milestones to tickets.</li> +<li>Close invalid or resolved tickets.</li> +<li>Merge finalized pull requests.</li> +<li>Build and deploy the documentation, using <code>mkdocs gh-deploy</code>.</li> +</ul> +<p>Further notes for maintainers:</p> +<ul> +<li>Code changes should come in the form of a pull request - do not push directly to master.</li> +<li>Maintainers should typically not merge their own pull requests.</li> +<li>Each issue/pull request should have exactly one label once triaged.</li> +<li>Search for un-triaged issues with <a href="https://github.com/tomchristie/django-rest-framework/issues?q=is%3Aopen+no%3Alabel">is:open no:label</a>.</li> +</ul> +<p>It should be noted that participating actively in the REST framework project clearly <strong>does not require being part of the maintenance team</strong>. Almost every import part of issue triage and project improvement can be actively worked on regardless of your collaborator status on the repository.</p> +<hr /> +<h2 id="release-process">Release process</h2> +<p>The release manager is selected on every quarterly maintenance cycle.</p> +<ul> +<li>The manager should be selected by <code>@tomchristie</code>.</li> +<li>The manager will then have the maintainer role added to PyPI package.</li> +<li>The previous manager will then have the maintainer role removed from the PyPI package.</li> +</ul> +<p>Our PyPI releases will be handled by either the current release manager, or by <code>@tomchristie</code>. Every release should have an open issue tagged with the <code>Release</code> label and marked against the appropriate milestone.</p> +<p>The following template should be used for the description of the issue, and serves as a release checklist.</p> +<pre><code>Release manager is @***. +Pull request is #***. + +Checklist: + +- [ ] Create pull request for [release notes](https://github.com/tomchristie/django-rest-framework/blob/master/docs/topics/release-notes.md) based on the [*.*.* milestone](https://github.com/tomchristie/django-rest-framework/milestones/***). +- [ ] Ensure the pull request increments the version to `*.*.*` in [`restframework/__init__.py`](https://github.com/tomchristie/django-rest-framework/blob/master/rest_framework/__init__.py). +- [ ] Confirm with @tomchristie that release is finalized and ready to go. +- [ ] Ensure that release date is included in pull request. +- [ ] Merge the release pull request. +- [ ] Push the package to PyPI with `./setup.py publish`. +- [ ] Tag the release, with `git tag -a *.*.* -m 'version *.*.*'; git push --tags`. +- [ ] Deploy the documentation with `mkdocs gh-deploy`. +- [ ] Make a release announcement on the [discussion group](https://groups.google.com/forum/?fromgroups#!forum/django-rest-framework). +- [ ] Make a release announcement on twitter. +- [ ] Close the milestone on GitHub. +</code></pre> +<p>When pushing the release to PyPI ensure that your environment has been installed from our development <code>requirement.txt</code>, so that documentation and PyPI installs are consistently being built against a pinned set of packages.</p> +<hr /> +<h2 id="project-ownership">Project ownership</h2> +<p>The PyPI package is owned by <code>@tomchristie</code>. As a backup <code>@j4mie</code> also has ownership of the package.</p> +<p>If <code>@tomchristie</code> ceases to participate in the project then <code>@j4mie</code> has responsibility for handing over ownership duties.</p> +<h4 id="outstanding-management-ownership-issues">Outstanding management & ownership issues</h4> +<p>The following issues still need to be addressed:</p> +<ul> +<li><a href="https://github.com/tomchristie/django-rest-framework/issues/2162">Consider moving the repo into a proper GitHub organization</a>.</li> +<li>Ensure <code>@jamie</code> has back-up access to the <code>django-rest-framework.org</code> domain setup and admin.</li> +<li>Document ownership of the <a href="http://restframework.herokuapp.com/">live example</a> API.</li> +<li>Document ownership of the <a href="https://groups.google.com/forum/#!forum/django-rest-framework">mailing list</a> and IRC channel.</li> +</ul> + + </div> + <!--/span--> + </div> + <!--/row--> + </div> + <!--/.fluid-container--> + </div> + <!--/.body content--> + <div id="push"></div> + </div> + <!--/.wrapper --> + + <footer class="span12"> + <p>Documentation built with <a href="http://www.mkdocs.org/">MkDocs</a>.</a> + </p> + </footer> + + <!-- Le javascript + ================================================== --> + <!-- Placed at the end of the document so the pages load faster --> + <script src="../../js/jquery-1.8.1-min.js"></script> + <script src="../../js/prettify-1.0.js"></script> + <script src="../../js/bootstrap-2.1.1-min.js"></script> + <script src="../../js/theme.js"></script> + + <script> + //$('.side-nav').scrollspy() + var shiftWindow = function() { + scrollBy(0, -50) + }; + if (location.hash) shiftWindow(); + window.addEventListener("hashchange", shiftWindow); + + $('.dropdown-menu').on('click touchstart', function(event) { + event.stopPropagation(); + }); + + // Dynamically force sidenav to no higher than browser window + $('.side-nav').css('max-height', window.innerHeight - 130); + + $(function() { + $(window).resize(function() { + $('.side-nav').css('max-height', window.innerHeight - 130); + }); + }); + </script> +</body> + +</html>
\ No newline at end of file diff --git a/topics/release-notes/index.html b/topics/release-notes/index.html index ea2ead2f..a8d74ed8 100644 --- a/topics/release-notes/index.html +++ b/topics/release-notes/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../project-management">Project management</a> + </li> + + <li > <a href="../rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/topics/rest-framework-2-announcement/index.html b/topics/rest-framework-2-announcement/index.html index f849c7cc..7047aa7c 100644 --- a/topics/rest-framework-2-announcement/index.html +++ b/topics/rest-framework-2-announcement/index.html @@ -65,7 +65,7 @@ <a class="repo-link btn btn-inverse btn-small " rel="prev" href="../2.2-announcement"> Next <i class="icon-arrow-right icon-white"></i> </a> - <a class="repo-link btn btn-inverse btn-small " rel="next" href="../contributing"> + <a class="repo-link btn btn-inverse btn-small " rel="next" href="../project-management"> <i class="icon-arrow-left icon-white"></i> Previous </a> <a class="repo-link btn btn-inverse btn-small" href="#searchModal" data-toggle="modal"><i class="icon-search icon-white"></i> Search</a> @@ -251,6 +251,10 @@ <a href="../contributing">Contributing to REST framework</a> </li> + <li > + <a href="../project-management">Project management</a> + </li> + <li class="active" > <a href=".">2.0 Announcement</a> </li> diff --git a/topics/rest-hypermedia-hateoas/index.html b/topics/rest-hypermedia-hateoas/index.html index 6dd2343a..c5171cc0 100644 --- a/topics/rest-hypermedia-hateoas/index.html +++ b/topics/rest-hypermedia-hateoas/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../project-management">Project management</a> + </li> + + <li > <a href="../rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/topics/third-party-resources/index.html b/topics/third-party-resources/index.html index c2d6186e..db4aa07f 100644 --- a/topics/third-party-resources/index.html +++ b/topics/third-party-resources/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../project-management">Project management</a> + </li> + + <li > <a href="../rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/tutorial/1-serialization/index.html b/tutorial/1-serialization/index.html index 0561fab1..7cb478bd 100644 --- a/tutorial/1-serialization/index.html +++ b/tutorial/1-serialization/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/tutorial/2-requests-and-responses/index.html b/tutorial/2-requests-and-responses/index.html index e9436d2a..f117a9d3 100644 --- a/tutorial/2-requests-and-responses/index.html +++ b/tutorial/2-requests-and-responses/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/tutorial/3-class-based-views/index.html b/tutorial/3-class-based-views/index.html index cf7be3ae..6533945d 100644 --- a/tutorial/3-class-based-views/index.html +++ b/tutorial/3-class-based-views/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/tutorial/4-authentication-and-permissions/index.html b/tutorial/4-authentication-and-permissions/index.html index f4661bde..21e181c5 100644 --- a/tutorial/4-authentication-and-permissions/index.html +++ b/tutorial/4-authentication-and-permissions/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/tutorial/5-relationships-and-hyperlinked-apis/index.html b/tutorial/5-relationships-and-hyperlinked-apis/index.html index 51a66e92..e552c6e4 100644 --- a/tutorial/5-relationships-and-hyperlinked-apis/index.html +++ b/tutorial/5-relationships-and-hyperlinked-apis/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> diff --git a/tutorial/6-viewsets-and-routers/index.html b/tutorial/6-viewsets-and-routers/index.html index 04071f9e..03839e8d 100644 --- a/tutorial/6-viewsets-and-routers/index.html +++ b/tutorial/6-viewsets-and-routers/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> @@ -423,8 +427,8 @@ class SnippetViewSet(viewsets.ModelViewSet): snippet = self.get_object() return Response(snippet.highlighted) - def pre_save(self, obj): - obj.owner = self.request.user + def perform_create(self, serializer): + serializer.save(owner=self.request.user) </code></pre> <p>This time we've used the <code>ModelViewSet</code> class in order to get the complete set of default read and write operations.</p> <p>Notice that we've also used the <code>@detail_route</code> decorator to create a custom action, named <code>highlight</code>. This decorator can be used to add any custom endpoints that don't fit into the standard <code>create</code>/<code>update</code>/<code>delete</code> style.</p> diff --git a/tutorial/quickstart/index.html b/tutorial/quickstart/index.html index b81e1dc4..0c593f47 100644 --- a/tutorial/quickstart/index.html +++ b/tutorial/quickstart/index.html @@ -252,6 +252,10 @@ </li> <li > + <a href="../../topics/project-management">Project management</a> + </li> + + <li > <a href="../../topics/rest-framework-2-announcement">2.0 Announcement</a> </li> |
