diff options
Diffstat (limited to 'docs/examples/blogpost.rst')
| -rw-r--r-- | docs/examples/blogpost.rst | 28 |
1 files changed, 17 insertions, 11 deletions
diff --git a/docs/examples/blogpost.rst b/docs/examples/blogpost.rst index 9d762f52..be91913d 100644 --- a/docs/examples/blogpost.rst +++ b/docs/examples/blogpost.rst @@ -8,26 +8,32 @@ Blog Posts API The models ---------- +In this example we're working from two related models: + ``models.py`` .. include:: ../../examples/blogpost/models.py :literal: -URL configuration ------------------ +Creating the resources +---------------------- + +We need to create two resources that we map to our two existing models, in order to describe how the models should be serialized. +Our resource descriptions will typically go into a module called something like 'resources.py' -``urls.py`` +``resources.py`` -.. include:: ../../examples/blogpost/urls.py +.. include:: ../../examples/blogpost/resources.py :literal: -Creating the resources ----------------------- +Creating views for our resources +-------------------------------- -Once we have some existing models there's very little we need to do to create the corresponding resources. We simply create a base resource and an instance resource for each model we're working with. -django-rest-framework will provide the default operations on the resources all the usual input validation that Django's models can give us for free. +Once we've created the resources there's very little we need to do to create the API. +For each resource we'll create a base view, and an instance view. +The generic views :class:`.ListOrCreateModelView` and :class:`.InstanceModelView` provide default operations for listing, creating and updating our models via the API, and also automatically provide input validation using default ModelForms for each model. -#``views.py`` +``urls.py`` -#.. include:: ../../examples/blogpost/views.py -# :literal:
\ No newline at end of file +.. include:: ../../examples/blogpost/urls.py + :literal: |
