Commit Graph

1326 Commits

Author SHA1 Message Date
Carlton Gibson
1befab795a
Added generic 500 and 400 JSON error handlers. (#5904)
* Added generic 500 and 400 JSON error handlers.
* Docs for generic error views.
2018-04-03 09:16:36 +02:00
Xavier Ordoquy
489d3415ab required extra argument should be a boolean, not a string. (fixes #5906) 2018-03-28 12:39:18 +02:00
Carlton Gibson
6c0c69ed65
Correct allow_null behaviour when required=False (#5888)
* Revert "Non-required fields with 'allow_null=True' should not imply a default value (#5639)"
    This reverts commit 905a5579df.
    Closes #5708

* Add test for allow_null + required=False
    Ref #5708: allow_null should imply default=None, even for non-required fields.

* Re-order allow_null and default in field docs
    default is prior to allow_null. allow_null implies an outgoing default=None.

* Adjust allow_null note.
2018-03-20 21:24:39 +01:00
Carlton Gibson
c2b24f83a3
Alter read_only+default behaviour (#5886)
* Always exclude read_only fields from _writable_fields

* Remove `read_only` from `CreateOnlyDefault` example.
      In this context (without mentioning `save`) now slightly misleading.
2018-03-20 21:09:31 +01:00
Shreyans Sheth
e3f9c65362
Updated Rate Limiting Cite
The current link was broken, fixed it. A good article on rate limiting indeed.
2018-03-19 14:24:21 +05:30
Carlton Gibson
0da461710a
Corrected docs on router include with namespaces. (#5843)
* Provide both app and instance namespace examples
* Emphasise non-namespaced option
2018-03-13 15:52:04 +01:00
Allisson Azevedo
d1c92c81ff Add Django Rest Framework Role Filters to Third party packages (#5809) 2018-02-08 09:04:51 +01:00
Paulo Scardine
0d5a3a00b0 Add schema to ObtainAuthToken
Add encoding parameter to ManualSchema

Closes #5676

* Fixed lint errors
* Added docs for ManualSchema encoding parameter
2018-02-05 16:16:42 +01:00
Fraire, Santiago
878fe895dc Docs: Added example reimplementing ObtainAuthToken
Closes #5802
2018-02-05 15:53:49 +01:00
Veli-Matti Helke
2fa04caf7c small fix to API documentation: schemas (#5796)
adding missing parameters to get_manual_fields()
2018-01-31 14:25:57 +01:00
Matt Prahl
2677f59d5d Refer to "NamespaceVersioning" instead of "NamespacedVersioning" in the documentation (#5754) 2018-01-29 15:33:14 +01:00
Max Goodridge
3e5d3752e7 Fixed a typo (#5783) 2018-01-29 08:41:55 +01:00
Ryan P Kilby
73203e6b59 Rework dynamic list/detail actions (#5705)
* Merge list/detail route decorators into 'action'

* Merge dynamic routes, add 'detail' attribute

* Add 'ViewSet.get_extra_actions()'

* Refactor dynamic route checking & collection

* Refactor dynamic route generation

* Add 'ViewSet.detail' initkwarg

* Fixup schema test

* Add release notes for dynamic action changes

* Replace list/detail route decorators in tests

* Convert tabs to spaces in router docs

* Update docs

* Make 'detail' a required argument of 'action'

* Improve router docs
2018-01-25 09:40:49 +01:00
Teddy Cross
78367ba102 Always fully qualify ValidationError in docs (#5751) 2018-01-19 08:40:09 +01:00
Ryan P Kilby
2709de1310 Add HStoreField, postgres fields tests (#5654)
* Test postgres field mapping

* Add HStoreField

* Ensure 'HStoreField' child is a 'CharField'

* Add HStoreField docs
2018-01-15 15:52:30 +01:00
Jon Dufresne
d3f3c3d9c1 Prefer https protocol for links in docs when available 2018-01-15 15:15:21 +01:00
Jon Dufresne
d5c34aa813 Remove unused links from docs (#5735)
Each removed link has no inline use.
2018-01-15 15:03:44 +01:00
Jon Dufresne
ffe3dbb1b1 Perfer iter(dict) over iter(dict.keys()) (#5736)
Calling dict.keys() is unnecessary. The two are functionally equivalent
on modern Pythons.

Inspired by Lennart Regebro's talk "Prehistoric Patterns in Python" from
PyCon 2017.

https://www.youtube.com/watch?v=V5-JH23Vk0I
2018-01-08 09:49:46 +00:00
Cristi Vîjdea
522d453546 Add drf-yasg to documentation and schema 3rd party packages (#5720)
Also fixed broken `swagger` link.
2018-01-02 14:51:54 +01:00
Ryan P Kilby
b65967711c Formalize URLPatternsTestCase (#5703)
* Add formalized URLPatternsTestCase

* Update versioning tests w/ new URLPatternsTestCase

* Cleanup router tests urlpatterns

* Add docs for URLPatternsTestCase
2018-01-02 11:14:25 +01:00
Cristi Vîjdea
0712094ea2 Fix typo in HostNameVersioning doc (#5709) 2018-01-02 10:52:52 +01:00
Mariano Baragiola
be0a57b0f1 FIX link 2017-12-27 10:28:59 -03:00
Mariano Baragiola
6ce60cd594 Update writable nested serializers docs 2017-12-27 10:17:10 -03:00
Ryan P Kilby
5fc35eb7eb Add missing word in 'Field.allow_null' docs 2017-12-22 12:23:07 -05:00
Carlton Gibson
cf3929d88d
Add example using source=‘*’ to custom field docs. (#5688)
* Add example using `source=‘*’` to custom field docs.
* Add nested serialiser example

Closes #2032 closes #3066
2017-12-20 10:04:12 +01:00
Carlton Gibson
4bcbf691cf
Document ViewSet.action (#5685)
Closes #2941

Provides example of adjusting permission by action.
2017-12-19 12:06:57 +01:00
Carlton Gibson
e87fcbb99d
Add link to Classy DRF in docs (#5683)
Closes #5636 as per https://github.com/encode/django-rest-framework/issues/5636#issuecomment-348143281
2017-12-19 12:06:41 +01:00
Carlton Gibson
b3a0b271cd
Add example to to_representation docs (#5682)
Closes #5425 as per https://github.com/encode/django-rest-framework/issues/5425#issuecomment-341063819
2017-12-19 12:06:24 +01:00
Carlton Gibson
43c2c91dde
Add note on object permissions for FBVs (#5681)
Closes #3269
2017-12-19 12:05:59 +01:00
Carlton Gibson
cc25f57f7b
Add UNAUTHENTICATED_USER = None note (#5679)
When removing authentication entirely you cannot import `django.contrib.auth.models.AnonymousUser`

Closes #3494
2017-12-19 10:31:20 +01:00
Carlton Gibson
2359d3981b
Add docs note re generated BooleanField being required=False (#5665)
* Note that BooleanField default is required=False

Closes #5664
2017-12-14 11:39:54 +01:00
Carlton Gibson
791539acec
Add DEFAULT_SCHEMA_CLASS setting (#5658)
* Add test for new setting

* Add DefaultSchema utility

* Add new setting to docs
2017-12-14 11:24:21 +01:00
Hang Park
01587b9eb1 Typos in serializers documentation (#5652)
Fixes #5651.

Change `update()` to `.update()` in serializers documentation to get a
consistency with `.create()`.
2017-12-04 07:00:03 -05:00
Ryan P Kilby
7855d3bd8b Add '.basename' and '.reverse_action()' to ViewSet (#5648)
* Router sets 'basename' on ViewSet

* Add 'ViewSet.reverse_action()' method

* Test router setting initkwargs
2017-12-04 11:55:49 +01:00
Carlton Gibson
c7df69ab77
Note AutoSchema limitations on bare APIView (#5649)
AutoSchema uses GenericAPIView hooks to introspect. If these are not present it’s results will be limited. Note this.

Closes #5121
2017-12-04 10:52:59 +01:00
Carlton Gibson
a0cdba6277
Extract method for manual_fields processing (#5633)
* Extract method for `manual_fields` processing

Allows reuse of logic to replace Field instances in a field list by `Field.name`.

Adds a utility function for the logic plus a wrapper method on `AutoSchema`.

Closes #5632

* Manual fields suggestions (#2)

* Use OrderedDict in inspectors

* Move empty check to 'update_fields()'

* Make 'update_fields()' an AutoSchema staticmethod

* Add 'AutoSchema.get_manual_fields()'

* Conform '.get_manual_fields()' to other methods

* Add test for update_fields

* Make sure `manual_fields` is a list.

(As documented to be)

* Add docs for new AutoSchema methods.

* `get_manual_fields`
* `update_fields`

* Add release notes for PR.
2017-12-04 09:07:43 +01:00
Ryan P Kilby
5f42cb7027 Add allow_null serialization output note (#5641) 2017-12-01 10:07:33 +01:00
Ryan P Kilby
c63e35cb09 Fix AttributeError hiding on request authenticators (#5600)
* Update assertion style in user logout test

* Apply middlewares to django request object

* Fix test for request auth hiding AttributeErrors

* Re-raise/wrap auth attribute errors

* Fix test for py2k

* Add docs for WrappedAttributeError
2017-11-23 08:58:04 +01:00
Jon Dufresne
ff556a91fd Remove references to unsupported Django versions in docs and code (#5602)
Per the trove classifiers, DRF only supports Django versions 1.10+. Can
drop documentation, code comments, and workarounds for older Django
versions.
2017-11-20 09:35:54 +01:00
bartkim0426
9c11077cf6 Fix in documentation (#5612)
- typo in serialization document: 'intead' => 'instead'
2017-11-20 09:08:16 +01:00
Alexei Znamensky
20954469b2 Fix in documentation (#5611)
- model serializers now must provide either "fields" or "exclude" as attribute
2017-11-20 09:07:36 +01:00
Jon Dufresne
f9c67f04d4 Clean up all whitespace throughout project (#5578)
* Remove trailing whitespace from lines
* Remove trailing nad leading whitespace from files

Allows for cleaner diffs in future changes. For editors that
automatically clean up whitespace on save, will avoid unrelated line
changes in diffs.
2017-11-09 20:57:53 +01:00
Carlton Gibson
331c31370f
Add rounding parameter to DecimalField (#5562)
* Adding rounding parameter to DecimalField.

* Using standard `assert` instead of `self.fail()`.

* add testcase and PEP8 multilines fix

* flake8 fixes

* Use decimal module constants in tests.

* Add docs note for `rounding` parameter.
2017-11-06 09:55:09 +01:00
Adrien Brunet
1575bd98d8
Update link to documentation
Previous link led to a maze. :/
2017-11-03 15:49:21 +01:00
Danilo Akamine
4249245123 Add import to example in api-guide/parsers (#5547) 2017-10-30 17:11:54 +01:00
Pratyush Mittal
f87699e2ca Adding examples and documentation for caching (#5514) 2017-10-20 09:10:09 +02:00
Ryan P Kilby
6221124e0d Docs about default value for dotted source, additional tests (#5489)
* Add docs note on dotted source + default value

* Add additional dotted source tests
2017-10-16 11:33:46 +02:00
Xavier Ordoquy
f585eee125 Remove duplicated line 2017-10-09 22:19:53 +02:00
Carlton Gibson
eb3d078a2c Version 3.7: Announcement etc (#5437)
* Set version number for 3.7.0 release

* Rename release notes section

Moved issue links to top for easier access.
(Can move back later)

* Add release note for #5273

* Add release note for #5440

* Add release note for #5265

Strict JSON handling

* Add release note for #5250

* Add release notes for #5170

* Add release notes for #5443

* Add release notes for #5448

* Add release notes for #5452

* Add release not for #5342

* Add release notes for 5454

* Add release notes for #5058 & #5457

Remove Django 1.8 & 1.9 from README and setup.py

* Release notes for merged 3.6.5 milestone tickets

Tickets migrated to 3.7.0 milestone.

* Add release notes for #5469

* Add release notes from AM 2ndOct

* Add final changes to the release notes.

* Add date and milestone link

Move issue links back to bottom.

* Update translations from transifex

* Begin releae anouncement

* Add release note for #5482

* 3.7 release announcement & related docs.
2017-10-06 13:18:31 +02:00
Ryan P Kilby
e0a6c4b5bd Clarify 'to_internal_value()' validation behavior (#5466) 2017-10-02 13:51:48 +01:00
Lim H
62ecbf2817 Add drf-openapi (#5470)
* Add DRF OpenAPI as a 3rd party tool for DRF doc

* Add image

* Add third party packages section to schema doc

* Add DRF OpenAPI reference
2017-10-02 11:16:33 +02:00
Carlton Gibson
5c2290d973 Add note on not using floats with CursorPagination (#5459)
Closes #5160, closes #5164.
2017-09-27 12:23:54 +02:00
Carlton Gibson
1bcee8c60c Document extra parameters to get_schema_view 2017-09-25 16:25:40 +02:00
Matt Davis
107e8b3d23 Make DEFAULT_PAGINATION_CLASS None by default. (#5170)
* Changes to the paginator defaults and settings

Require a default paginator be specified when using the page size
setting.
https://github.com/encode/django-rest-framework/issues/5168

* DRF-5168 import warnings

missed this in last commit

* Add a system checks file

Add a check for pagination settings for the 3.7 upgrade cycle.

* more compatible import approach

* missing bactic

* revised language and approach to import the system check

Adds a rest framework app config.

* Adjust doc wording
2017-09-25 15:36:30 +02:00
Paolo Melchiorre
11e5851196 Update pagination.md
Fixed 2 missing spaces in Custom Pagination snippet
2017-09-25 11:30:21 +02:00
Carlton Gibson
aecca9d8e8 Add note on force_authenticate + refresh_from_db
…in case you’re reusing the same in-memory user whilst updating it in the DB.

Closes #5016, closes #5066, closes #4102
2017-09-25 11:14:36 +02:00
Ryan P Kilby
215248c042 Add 'STRICT_JSON' docs 2017-09-25 09:08:20 +02:00
Carlton Gibson
7b1582e00e Allow schema = None. Deprecate exclude_from_schema (#5422)
* Add tests for schema exclusions

* Move exclusion check to should_include_endpoint

* Update docs

* Switch to using `schema = None`

* Test PendingDeprecationWarnings

* Add note to release notes.

* s/deprecated/pending deprecation/

* Add PR link to release notes

* Correct typo in test class name

* Test 'exclude_from_schema' deprecation warning message (#1)

* Correct deprecation warning message
2017-09-20 11:29:47 +02:00
Carlton Gibson
d54df8c438 Refactor schema generation to allow per-view customisation (#5354)
* Initial Refactor Step

* Add descriptor class
* call from generator
* proxy back to generator for implementation.

* Move `get_link` to descriptor

* Move `get_description` to descriptor

* Remove need for generator in get_description

* Move get_path_fields to descriptor

* Move `get_serializer_fields` to descriptor

* Move `get_pagination_fields` to descriptor

* Move `get_filter_fields` to descriptor

* Move `get_encoding` to descriptor.

* Pass just `url` from SchemaGenerator to descriptor

* Make `view` a property

Encapsulates check for a view instance.

* Adjust API Reference docs

* Add `ManualSchema` class

* Refactor to `ViewInspector` plus `AutoSchema`

The interface then is **just** `get_link()`

* Add `manual_fields` kwarg to AutoSchema

* Add schema decorator for FBVs

* Adjust comments

* Docs: Provide full params in example

Ref feedback b52e372f8f (r137254795)

* Add docstring for ViewInstpector.__get__ descriptor method.

Ref https://github.com/encode/django-rest-framework/pull/5354#discussion_r137265022

* Make `schemas` a package.

* Split generators, inspectors, views.

* Adjust imports

* Rename to EndpointEnumerator

* Adjust ManualSchema to take `fields`

… and `description`.

Allows `url` and `action` to remain dynamic

* Add package/module docstrings
2017-09-14 09:46:34 +01:00
Jozef
7037ce88e9 Fix throttling documentation about Remote-Addr (#5414)
Clarify in docs that REMOTE_ADDR is part of the WSGI environ, not an HTTP header.
2017-09-12 12:08:32 +01:00
Sanjuro Jogdeo
0e341c24b4 Update get_object() example in permissions.md (#5401)
* Update get_object() example in permissions.md 

I'm a bit confused about the example that's provided in the 'Object level permissions' section.  Other examples (e.g. Tutorial 3 - Class Based Views) provided a pk to get_object().  It doesn't seem like this example has any way of identifying a specific object.  

Just in case I'm correct, I've prepared this pull request. But if I'm wrong, would it be possible for you to explain the example I modified?  

Many Thanks...

* Adjust patch
2017-09-08 18:51:16 +02:00
ersel-ionova
13222e45bc Make status_code documentation more readable. (#5400)
* Make status_code documentation more readable.

* Update status-codes.md
2017-09-08 16:53:17 +01:00
Irvan
b11f37eaf3 Fixed the MultipleFieldLookupMixin example to properly check for object level permission. 2017-09-07 11:06:44 +08:00
Vadim Laletin
c0475d059d Update link to drf-writable-nested repository in third-party serializers 2017-08-29 10:39:52 +07:00
Scott Kelly
807b9c716c Fix doc Response data attribute description 2017-08-23 21:30:56 -05:00
Carlton Gibson
43c7af0bb5 Adjust ListField & DictField signature docs (#5333)
Closes #5301
2017-08-17 10:06:09 +01:00
Oliver Eidel
bf4b3ff0d5 Fix token param in force_authenticate example (#5284)
related_name for Token is `auth_token`, not `token`.
2017-08-14 13:09:47 +01:00
Andrea Grandi
1799b569d8 Add documentation to create user token with the new command 2017-08-13 11:08:44 +01:00
Alexander Dutton
e80b78d1cb RemoteUserAuthentication, docs, and tests (#5306)
RemoteUserAuthentication, docs, and tests
2017-08-11 10:35:00 +01:00
Steven Johns
9b5a6bea67 Fix typo on fields.md (#5320)
> keeps you error messages

to

> keeps your error messages

and 

> more cleanly separated from your code

to 

> cleaner and more separated from your code
2017-08-09 15:21:23 -04:00
Didi Hoffmann
1368d3677c Added the separator line back
Accidentally also deleted a line.
2017-07-31 15:00:26 +02:00
Didi Hoffmann
ad501d41f5 Added the django user model
So it is possible to copy paste the example and it will work out of the box.
2017-07-31 14:50:36 +02:00
Tommy Beadle
2a1fd3b45a Add link to third-party package for LinkHeaderPagination. (#5270) 2017-07-12 16:45:41 +01:00
David Sanders
4091607d94 Add information in docs about djangorestframework-simplejwt package 2017-07-05 14:48:54 -06:00
Neftalí Acosta
900cae1507 Link broken
The link to the Python Exception Handling Techniques article written by Doug Hellmann is broken.

I could find the article in the URL I proposed.
2017-06-23 08:09:10 +01:00
Michael Hrivnak
5fe984b657 typo fix
removes an extraneous word
2017-06-20 15:07:45 -04:00
Aristóbulo Meneses
5002d1a9ae Update DOT docs
DOT renamed `ext` to `contrib` on their new release `1.0.0`
2017-06-17 15:02:22 +02:00
Matt Broach
e4ec1d744e Updated DjangoRestMulipleModel documentation to point to new repo location 2017-05-30 23:39:18 -04:00
Tom Christie
5267fcc8c6 Merge pull request #5159 from carltongibson/docs/get_schema_view_params
Add `generator_class` parameter to `get_schema_view` docs.
2017-05-29 12:53:49 +01:00
Tom Christie
7de34cf187 Merge pull request #5163 from khakulov/patch-2
Added documentation from where to import get_schema_view
2017-05-29 11:55:02 +01:00
Azim Khakulov
d1093b5326 Added documentation from where to import get_schema_view 2017-05-23 02:08:20 +02:00
Carlton Gibson
53b3b83b04 Add generator_class parameter to docs.
`get_schema_view` accepts `generator_class` parameter
2017-05-22 11:55:19 +02:00
Xavier Ordoquy
6831472a62 Remove ambiguous reference to former DjangoFilterBackend. 2017-05-19 23:50:13 +02:00
Xavier Ordoquy
703655bc65 Non model Viewset requires base_name when registering to router. 2017-05-19 23:35:25 +02:00
Ryan P Kilby
7322aa6b68 Simplify django-filter docs, add drf integration link 2017-05-03 11:03:11 -04:00
Xavier Ordoquy
a1e6d83533 Add missing pk keyword argument to the detail_route. 2017-05-03 02:19:30 +02:00
Rodney Folz
971bc066c5 Improve grammar in .force_authenticate() docs
* Remove unnecessary comma
* Remove the "and simple" copied from the line above.
* Add "entirely" to emphasize that this function bypasses the authentication step.
2017-04-27 15:44:06 -07:00
Tom Christie
aafd0a644f Merge pull request #4979 from linovia/feature/improve_schema_shortcut
Restrict doc & schema shortcuts to a subset of urls
2017-04-27 16:58:01 +01:00
Mike Lissner
b8520a1f2e Updates the core json media type in the docs
Per: http://www.django-rest-framework.org/topics/3.5-announcement/#corejson-media-type

(I was *wondering* why this didn't seem to work!)
2017-04-20 11:37:46 -07:00
Xavier Ordoquy
36e5759498 Add documentation for the get_schema_view new argument: patterns 2017-04-19 07:49:13 +02:00
Azim Khakulov
613aa61ada Clarify get_schema_fields signature
I had to look for the signature of `get_schema_fields()`in source code.
2017-04-12 12:25:27 +02:00
Tom Christie
20c7a24c14 Merge pull request #5025 from aaronn/thirdparty
Add drfpasswordless to Third Party Packages and Authentication pages
2017-03-27 20:12:38 +01:00
aaronykng
0400cbbc4c Added drfpasswordless to Authentication docs 2017-03-27 12:08:07 -07:00
Jack Evans
73bd709813 Document adding django_filters to installed apps
Reminds users to add `django_filters` to their `INSTALLED_APPS` as detailed in the django-filter documentation https://django-filter.readthedocs.io/en/develop/guide/install.html
2017-03-27 16:13:50 +01:00
aaronykng
aa92736d72 Added drfpasswordless to authentication topic page. 2017-03-27 07:19:11 -07:00
Nick Timkovich
51c6d23a05 Mention where the mixins live
Ctrl-F on the ViewSets page doesn't show where the `mixins.SomeMixin...` classes come from.
2017-03-19 17:17:37 -05:00
Tibo Beijen
cf5d401a0e Allow required false and default (#4692)
* Default value will now be used when serializing if key or attribute is missing.
2017-03-07 13:19:19 +00:00
Md. Al-Amin
8a14b39e7d Added doc for removing pagination in generic-view. (#4940) 2017-03-06 18:33:27 +00:00
Vadim
d390762e18 Add drf-writable-nested package to third-party serializers (#4913) 2017-02-20 15:16:27 +00:00
Akhil Lawrence
963cb4cdc6 Corrected documentation 2017-02-18 13:20:03 +05:30
Eduard Iskandarov
de8fcbf696 Refs: #4256 delete unrelevant documentation 2017-02-14 13:27:33 +03:00
Michael Borisov
176831e22b Missing comma (#4889) 2017-02-08 15:17:58 +00:00
李扬
cbad236f6d Add max_length and min_length arguments for ListField (#4877) 2017-02-06 09:36:03 +00:00
Luca
635dc03529 Parametrizable viewset custom views reverse name (#4821) 2017-01-19 15:20:34 +00:00
Emmanouil Konstantinidis
81195aabbf Include a link to the django-rest-framework-api-key package 2017-01-18 14:36:43 +00:00
Artem Muterko
b352c8a24c Fix some typos in documentation 2017-01-08 15:34:52 +02:00
wim glenn
e2c35920d1 fix a spelling error in api-guide (#4788) 2017-01-06 22:46:56 +00:00
Roman Vasilyev
64e801e479 get view for django 'virtual hosts' (#4776)
Brill, thanks! 👍
2017-01-06 22:46:36 +00:00
wim glenn
718764f591 add links to djangorestframework-queryfields to docs (#4786) 2017-01-06 06:40:50 +00:00
Ian Clark
eddc34f4c8 Add Serializer Extensions documentation (#4777) 2017-01-04 08:40:42 +00:00
Ryan P Kilby
11fd3bf108 Add disabling of declared fields on serializer subclasses (#4764)
* Add test for disabling declared fields on child
* Check that declared base field is not in attrs
* Update meta inheritance docs to include serializer
* Test that meta fields cannot be declared as None
* Add docs example for declarative field disabling
2017-01-03 21:14:19 +00:00
robert
492444eb2e added drf-flexfields addon info 2017-01-02 17:03:03 -06:00
Emmanuelle Delescolle
d98a0772d0 Add DRF-Base64 to third-party serializers
Add DRF-Base64, which provides serializers to handle base64-encoded files, to third-party serializers packages
2016-12-31 08:16:45 +01:00
Emmanuelle Delescolle
f1cbf51b43 Add drf-schema-adapter to 3rd party metadata mods 2016-12-25 10:06:47 +01:00
Masashi SHIBATA
c2367fb017 Fix documentation's sample code in API Guide (#4756) 2016-12-17 13:00:29 +00:00
Eduard Iskandarov
ebe174c0d7 add per-view custom exception handler support (#4753) 2016-12-15 12:36:40 +00:00
Tom Christie
89d22942a6 Add missing docs on RequestsClient. Closes #4747. 2016-12-12 10:08:54 +00:00
Daniel Rech
761d53e923 Updated Link ti Django Docs
The Url to the settings/#caches Link changed in Django documentation.
2016-12-05 11:36:03 +01:00
Carlton Gibson
16f5d42cbc Add additional link to HTML & Forms topic page (#4726)
Just makes the topic page easier to find.

Closes #1673
2016-12-01 09:11:25 +00:00
Xavier Ordoquy
22578525ef Documentation update (#4717) 2016-11-30 12:58:34 +00:00
Jeff Fein-Worton
a5c8a8c226 typo 2016-11-29 18:00:10 -08:00
Germán Larraín
aed8387e05 docs: Fix description of DecimalField's max_digits (#4714)
As of PR #4377, `max_digits=None` is allowed for `DecimalField`.
2016-11-29 15:35:43 +00:00
Xavier Ordoquy
1e0988686c Update the Python doc links to use https and point to Python 3 (#4713) 2016-11-29 12:27:00 +00:00
Nik Nyby
abc62afddb docs typo fix (#4701)
Remove unnecessary "a"
2016-11-24 09:39:18 +00:00
Nik Nyby
eaec60ae1d docs: grammar fix - it's -> its (#4698) 2016-11-23 16:10:39 +00:00
Nik Nyby
a13b8d5560 docs: grammar fix 2016-11-23 10:13:03 -05:00
Vinay Anantharaman
8030f5b74f Edit to the import in Setting filter backends
`django_filters` doesn't export `rest_framework` by default so it's required to import it.
2016-11-22 14:50:47 -08:00
Bruno Alla
0c02bbbfa7 Correct a small typo in exceptions documentation 2016-11-14 16:58:16 +00:00
Tom Christie
24791cb353 Invalidate any existing prefetch cache on PUT requests. (#4668) 2016-11-11 09:44:35 +00:00
Aaron Lelevier
0b9304014d Add documentation link for single 'field-level validation' to the Validator docs page (#3772) (#4657) 2016-11-07 11:30:46 +00:00
Carlos de la Torre
d55e176a1e Fix documentation error: removed unused variable (#4647) 2016-11-02 14:03:53 +00:00
Josep Cugat
46f837a9d1 Fix APIException full_details() typo in documentation (#4633)
APIException has a get_full_details() method but the documentation refers to full_details().
2016-10-28 12:05:32 +01:00
Phil Krylov
72dc6d1d5c Add drf-proxy-pagination reference to Pagination docs 2016-10-23 04:36:36 +03:00
Mads Jensen
8ac524915c added on_delete=models.CASCADE to models.ForeignKey in the documentation (#4614) 2016-10-22 16:37:23 +01:00
Tom Christie
3b9afb571b Version 3.5.0 (#4596) 2016-10-20 16:25:40 +01:00
Tom Christie
2395fb5386 Deprecate DjangoFilter backend (#4593)
Deprecate the built-in `rest_framework.filters.DjangoFilterBackend` in favour of the third-party `django_filters.rest_framework.DjangoFilterBackend`.
2016-10-20 10:47:09 +01:00
Alex Poleha
a83997e1ed Removed incorrect line from generic-views.md (#4583) 2016-10-14 11:29:48 +01:00
Tom Christie
a3802504a0 Error codes (#4550)
Add error codes to `APIException`
2016-10-11 10:25:21 +01:00
Steven Johns
072d14c2e1 Corrected artist and album_name
`The Roots` are the band: https://en.wikipedia.org/wiki/The_Roots

`Undun` is their album: https://en.wikipedia.org/wiki/Undun
2016-10-11 11:20:48 +11:00
Tom Christie
0dec36eb41 Version 3.5 (#4525)
* Start test case

* Added 'requests' test client

* Address typos

* Graceful fallback if requests is not installed.

* Add cookie support

* Tests for auth and CSRF

* Py3 compat

* py3 compat

* py3 compat

* Add get_requests_client

* Added SchemaGenerator.should_include_link

* add settings for html cutoff on related fields

* Router doesn't work if prefix is blank, though project urls.py handles prefix

* Fix Django 1.10 to-many deprecation

* Add django.core.urlresolvers compatibility

* Update django-filter & django-guardian

* Check for empty router prefix; adjust URL accordingly

It's easiest to fix this issue after we have made the regex.  To try
to fix it before would require doing something different for List vs
Detail, which means we'd have to know which type of url we're
constructing before acting accordingly.

* Fix misc django deprecations

* Use TOC extension instead of header

* Fix deprecations for py3k

* Add py3k compatibility to is_simple_callable

* Add is_simple_callable tests

* Drop python 3.2 support (EOL, Dropped by Django)

* schema_renderers= should *set* the renderers, not append to them.

* API client (#4424)

* Fix release notes

* Add note about 'User account is disabled.' vs 'Unable to log in'

* Clean up schema generation (#4527)

* Handle multiple methods on custom action (#4529)

* RequestsClient, CoreAPIClient

* exclude_from_schema

* Added 'get_schema_view()' shortcut

* Added schema descriptions

* Better descriptions for schemas

* Add type annotation to schema generation

* Coerce schema 'pk' in path to actual field name

* Deprecations move into assertion errors

* Use get_schema_view in tests

* Updte CoreJSON media type

* Handle schema structure correctly when path prefixs exist. Closes #4401

* Add PendingDeprecation to Router schema generation.

* Added SCHEMA_COERCE_PATH_PK and SCHEMA_COERCE_METHOD_NAMES

* Renamed and documented 'get_schema_fields' interface.
2016-10-10 13:03:46 +01:00
Manjit Kumar
d49e26f127 add drf-url-filters in third party filtering resources and fixed typo (#4548) 2016-10-10 12:35:38 +01:00
Rowan Seymour
883efbc19f Case insensitive uniqueness validation (#4534) 2016-10-04 13:44:50 +01:00
Danilo Bargen
1b882f7281 Add drf-dynamic-fields to third party packages (#4530) 2016-09-30 17:06:36 +01:00
Manjit Kumar
73fd1ff4e7 add drf-url-filters app to django-rest-framework in filtering docs (#4528)
- enabling validtions on incoming query params with the ease of adding new filters as easy as adding a new key in a dict.
2016-09-30 12:02:23 +01:00
Tom Christie
e7fd166048 Docs tweaks 2016-09-29 21:29:21 +01:00
Jozef Knaperek
76cc2f0319
Rename an invalid reference to BasicToken in the docs 2016-09-19 21:52:06 +02:00
Jeff Willette
a68b37d8bc Update to correct location of reverse relation doc (#4481) 2016-09-13 09:31:48 +01:00
Xavier Ordoquy
e91ffc87cb Ignore empty args in the MultipleFieldLookupMixin definition - Closes #4484 2016-09-13 07:21:10 +02:00
Jakub Moliński
80bd3b9722 [documentation] Throttling random request code example fix (#4451) 2016-08-30 10:37:48 +01:00
Robert Jensen
59ca61abcd Add django-rest-framework-roles to third party packages in permissions docs (#4417) 2016-08-19 11:44:31 +01:00
Wim Glenn
0a48d21e09 fix a b0rked code example in the permissions section of api guide 2016-08-12 14:33:35 -05:00
Kyle Hornberg
3698d9ea2e Update permissions.md (#4381) 2016-08-10 17:23:10 +01:00
Daniel Hahler
378b04eeaa Fix handling of ALLOWED_VERSIONS and no DEFAULT_VERSION (#4370)
When only `ALLOWED_VERSIONS` but no `DEFAULT_VERSION` is specified, a
version should be enforced.
2016-08-10 15:19:56 +01:00
Tom Christie
febaa4db00 Add import in docs. [ci skip] 2016-08-08 09:28:15 +01:00
Marlon
672e5a0f96 Fix minor typo 2016-08-05 11:57:43 -07:00
Corentin Smith
54096dc22f Add imports in validators docs (#4355) 2016-08-04 22:06:35 +01:00
Tom Christie
e37619f741 Serializer defaults should not be included in partial updates. (#4346)
Serializer default values should not be included in partial updates
2016-08-02 13:05:12 +01:00
Jaap Roes
5b071ab35e Remove note about Django 1.3 (#4334)
Remove note about Django 1.3
2016-08-01 12:05:47 +01:00
Tom Christie
e407dc7f01 Added root_renderers argument (#4323) 2016-07-28 12:50:51 +01:00
Tom Christie
306726d9e8 Improve datetime format docs (#4322) 2016-07-28 12:25:21 +01:00
Tom Christie
061e0ed084 Added url and schema_url arguments (#4321) 2016-07-28 12:08:34 +01:00
Tom Christie
351e0a4a99 Fix json indent parameter. Closes #4281 (#4313) 2016-07-27 11:49:01 +01:00
Tom Christie
19b415ec25 Improve pagination docs. Refs #4304 [ci skip] 2016-07-26 16:45:27 +01:00
Gustavo Pantuza
da2ff1bc4a Adding support for RFC 4918 status codes (#4291)
* Added HTTP status codes from RFC 4918

* Updated documentation about status codes

* Added reference to RFC 4918
2016-07-26 11:09:12 +01:00
Osvaldo Santana Neto
02a81d3362 Fix SwaggerRenderer implementation example 2016-07-19 14:15:49 -03:00
Marc Gibbons
d80b0eaead Update schema generator example (#4267)
1. The returns from the views needs to be a Response
2. I found that instantiating the generator at the module level caused an import error when starting Django, likely because it is executing before all the app load magic happened. Moving it into the view method solved this.
2016-07-18 16:04:23 +01:00
Germán Larraín
1a65f72f71 docs.settings: fix name of VERSION_PARAM 2016-07-15 14:34:27 -04:00
Tom Christie
8385ae42c0 3.4.0 Release (#4258)
* 3.4.0 Release

* Version 3.4 release

* Full release notes

* Update translation files

* Update release documentation

* Update release notes

* Docs on supporting alternate schema formats

* Add schema_renderers to DefaultRouter
2016-07-13 16:30:41 +01:00
Mads Jensen
6defb8da47 lookup_type is deprecated in favor of lookup_expr (#4259)
* lookup_type is deprecated in favor of lookup_expr
* assertEquals is deprecated in favor of assertEqual
* app_name is a required keyword as of Django 1.10
2016-07-13 14:40:42 +01:00
Kenneth Schnall
ff5cfe3e84 Replace "class based views" occurrences with "class-based views" (#4251) 2016-07-08 08:38:50 +01:00
kiyoqoko
6338ce80ab Add localize keyword argument to DecimalField (#4233)
Add `localize` keyword argument for DecimalField
2016-07-06 16:07:16 +01:00
Tom Christie
6ff9840bde Schemas & client libraries. (#4179)
* Added schema generation support.
* New tutorial section.
* API guide on schema generation.
* Topic guide on API clients.
2016-07-04 16:38:17 +01:00
decore
1037a2742e Update pagination.md 2016-06-28 10:15:42 +08:00
Ken Lewerentz
57122f0422 Added missing colon in extra_kwargs documentation 2016-06-25 22:05:28 +07:00
Tom Christie
c3b7fba918 Exclude read_only=True fields from unique_together validation & add docs. (#4192)
* Exclude read_only=True fields from unique_together validation
* Test to ensure that unique_together validators can be removed
* Do not add uniquness_extra_kwargs when validators are explicitly declared.
* Add docs on validation in complex cases
2016-06-13 13:31:12 +01:00
Tom Christie
2712d4e5fe Note on obtain_auth_token and throttles/permissions. Closes #4128. [ci skip] (#4173) 2016-06-06 11:03:56 +01:00
Tom Christie
d404597e0b Update FileUploadParser docs. Closes #4167. [ci skip] (#4169) 2016-06-03 09:37:09 +01:00
Tom Christie
75751cc64e Allow relative style hyperlinked URLs 2016-06-02 15:03:17 +01:00
sohopro
20e3a9a006 Update filtering.md 2016-06-02 16:12:35 +09:00
Adam Chainz
e3337ab4aa Convert readthedocs link for their .org -> .io migration for hosted projects
As per [their blog post of the 27th April](https://blog.readthedocs.com/securing-subdomains/) ‘Securing subdomains’:

> Starting today, Read the Docs will start hosting projects from subdomains on the domain readthedocs.io, instead of on readthedocs.org. This change addresses some security concerns around site cookies while hosting user generated data on the same domain as our dashboard.

Test Plan: Manually visited all the links I’ve modified.
2016-05-29 23:26:56 +01:00
Carlton Gibson
9d87dbc016 Remove Py2/Py3 difference from Example (#4145)
`print` is available as a function on every supported version of Python (2.7+)
2016-05-25 14:38:44 +01:00
Tom Christie
9b56dda918 Update requests.md
Drop out-of-date paragraph on `request.content`
2016-05-18 08:38:18 +01:00
Joe Simpson
5cf7d4a90d Add LaTeX renderer to documentation (#4131) 2016-05-17 12:09:25 +01:00
Petros Moisiadis
788603e153 Document allow_empty argument (#4117)
ListSerializer fields or serializers that are passed many=True may also take an allow_empty=False argument to disallow empty lists as valid input.

Information about this was part of the 3.2 release announcement, but had not been part of the API docs until now.
2016-05-13 15:55:31 +01:00
Graham R. Jeffries
dbbf79be64 minor docs indentation fix (#4101)
Fixes a minor indentation typo.
2016-05-06 11:58:58 +01:00
Miro Hrončok
ffdac0d936 TokenAuthentication: Allow custom keyword in the header (#4097)
This allows subclassing TokenAuthentication and setting custom keyword,
thus allowing the Authorization header to be for example:

    Bearer 956e252a-513c-48c5-92dd-bfddc364e812

It doesn't change the behavior of TokenAuthentication itself,
it simply allows to reuse the logic of TokenAuthentication without
the need of copy pasting the class and changing one hardcoded string.

Related: #4080
2016-05-04 10:53:34 +01:00
Taylor Edmiston
c355cdc585 Fix typo in permissions docs 2016-05-03 14:20:45 -04:00
Kyle Hornberg
399e1c1dcf Typo fix (#4094) 2016-05-03 15:53:55 +01:00
Xavier Ordoquy
a9bbb502cb Remove references to South as we don't need it any longer. (#4085)
* Remove references to South as we don't need it any longer.
* Add a note about auth_token including Django migrations.
2016-04-29 14:16:03 +01:00
Xavier Ordoquy
bff3bebdbe Merge remote-tracking branch 'reference/stable/3.3.x' into merge_test
# Conflicts:
#	docs/topics/release-notes.md
2016-04-08 15:46:17 +02:00
Anthony Lukach
3fdd6e1db5 Add .partial_update to ModelViewSet documentation
The ModelViewSet inherits from the UpdateModelMixin, which provides the `.partial_update` method. This should be reflected in the documentation.
2016-03-29 10:50:12 -06:00
S. Andrew Sheppard
101c178b8c links to html-json-forms package 2016-03-24 11:55:19 -05:00
Stephan Groß
0056703fe8 Fix code sample indention 2016-03-21 10:23:34 +00:00
aleontiev
3a3fd66852 documentation: add a reference to the dynamic-rest addons under the serializers guide 2016-03-11 12:43:17 -05:00
Xavier Ordoquy
c91229aaab PAGINATE_BY_PARAM and MAX_PAGINATE_BY removed in 3.3 2016-03-08 06:41:08 +01:00
Xavier Ordoquy
c90cf828ae PAGE_SIZE addition in 3.1 2016-03-08 06:40:33 +01:00
Xavier Ordoquy
180137300f PAGINATE_BY removed in 3.3 2016-03-08 06:39:58 +01:00
Xavier Ordoquy
a0aac166bc DEFAULT_PAGINATION_SERIALIZER_CLASS removed in 3.1 2016-03-08 06:39:08 +01:00
Xavier Ordoquy
9208619362 Those are now fully removed. 2016-03-08 06:38:03 +01:00
Xavier Ordoquy
cac1ecb250 paginate_by removed in 3.3 2016-03-08 06:37:46 +01:00
Krzysztof Szularz
cfd681dc73 Add /en to Heroku guidelines link 2016-03-07 21:01:04 +01:00
meoooh
0a2a01d05a fix typo
fix typo
2016-03-07 20:58:47 +01:00
Wes
0e1dcb7323 fix typo 2016-03-07 20:58:24 +01:00
Luke Murphy
ef8e7f168f add rest-framework-generic-relations link to docs 2016-03-07 19:37:30 +01:00
José Padilla
b3582cd36b Merge pull request #3973 from lwm/docs-generic-relations
add rest-framework-generic-relations link to docs
2016-03-01 13:54:44 -04:00
Luke Murphy
66e86dc483 add rest-framework-generic-relations link to docs 2016-03-01 18:44:17 +01:00
Krzysztof Szularz
2ddd30be90 Add /en to Heroku guidelines link 2016-03-01 14:52:07 +01:00
Rex Kerr
f3b4cb5951 Fixes incorrect references to URLPathVersioning 2016-03-01 10:36:05 +01:00
Rex Kerr
88320b8a61 Fixes incorrect references to URLPathVersioning 2016-02-27 12:41:56 -08:00
Luke Murphy
c03c6c6e78 fix typo in relations docs 2016-02-27 00:27:41 +01:00
Luke Murphy
f3c5802872 fix typo in relations docs 2016-02-24 14:22:24 +01:00
José Padilla
0b6f53eb98 Merge pull request #3943 from erickwilder/3937-accept-callable-as-initial-value
Closes #3937. Support callable as the value of `initial` for any `serializer.Field`
2016-02-19 10:41:23 -04:00
Erick Wilder
a32baeab0c Use datetime example for the Field.initial attribute
Just like regular Django fields, the example adopted uses a `datetiume.date.today` to
illustrate the functionality.
2016-02-19 09:53:50 +01:00
meoooh
5cda3a04dd fix typo
fix typo
2016-02-18 14:43:41 +09:00
Erick Wilder
908efd6656 #3937 Update docs for the Field.initial attribute.
Add an usage example on how to pass a callable to the `Field.initial` in the docs.
2016-02-17 11:01:09 +01:00
Wes
b773f03bd0 fix typo 2016-02-17 16:35:53 +08:00
Xavier Ordoquy
d738ad7ae6 Update to serialization results (closes #3881). 2016-01-27 22:23:20 +01:00
James Beith
34901a5ffa Fix syntax errors in docs example
- Add missing comma in kwargs
- Remove spaces around keyword / parameter equals
- Replace incorrect curly brace with parenthesis
2016-01-24 13:33:18 +00:00
José Padilla
99a61d72a7 Fix broken link format 2016-01-20 14:04:04 -04:00
Xavier Ordoquy
f1b28b4d63 Merge pull request #3605 from ryanhiebert/slug-related-field-queryset
RelatedField get_queryset and context
2016-01-20 18:17:29 +01:00
Krzysztof Szularz
2d40be5bd8 Update link to Heroku guidelines
They seem to have changed the structure of the document.
2016-01-20 16:28:30 +01:00
Xavier Ordoquy
6f8e0c3c07 Merge pull request #3289 from koliber/update-docs-serilaizers-multi-update
Added explicit id field in multi update example
2016-01-18 18:44:03 +01:00
Ramon Moraes
a37a8748cc Update permissions.md
Adding additional note about the behavior of set permission classes per view as suggest on #3834
2016-01-15 11:44:25 -03:00
Nicolas Delaby
717e27c866 Document how to tweak authtoken.admin.TokenAdmin
With focus on large user base, but can be extended.
2016-01-14 14:59:31 +01:00
m1kola
5fa8a31855 Typo fix in docs/api-guide/relations.md
`slug field` in code snippet was replaced to `slug_field`
2016-01-06 17:58:45 +03:00
Luis San Pablo
183f8fad44 Class formatting 2015-12-31 21:18:41 -06:00
Luis San Pablo
ef491685a0 Initial fixes #3636 and fixes #3637 2015-12-31 21:14:57 -06:00
Robert Romano
c8915c0716 Change tab to spaces 2015-12-23 12:58:14 -08:00
Robert Romano
5fc938cbd1 The Internet Engineering Task Force approved the new HTTP status code 451. Adding to status.py and docs appropriately. 2015-12-23 12:54:17 -08:00
Tyrel Souza
8c0d736f23 Also fix usecases to use cases 2015-12-15 10:28:23 -05:00
Tyrel Souza
ffc10edd7e Fix minor typo on Pagination documentation 2015-12-15 10:24:49 -05:00
Xavier Ordoquy
dcaff71217 Merge pull request #3728 from karthik-suresh/Fixes-Issue3727
Import parser added to docs in API guide
2015-12-12 22:19:13 +01:00
Karthik Suresh
82973cfa32 Import parser added to docs in API guide
Added missing import statements in code snippet of API guide.

Closes-Issue: #3727
2015-12-12 21:59:08 +05:30
Kirill Zaborsky
85db6a681b Fixed versioning regexp
booking list regexp was fixed in 8b97bb8f68 but single booking wasn't for some reason, and `v1v2/bookings/123/` shouldn't be allowed here
2015-12-07 10:59:57 +03:00
Tom Christie
832d6322a7 Merge pull request #3631 from syphar/paginat
allow setting a custom Django Paginator class
2015-11-30 20:58:32 +00:00
Prashant Tiwari
8b97bb8f68 Fix for Incorrect regex in URLPathVersioning documentation #3638 2015-11-26 06:23:59 +00:00
Xavier Ordoquy
d0352ae6fc Merge pull request #3621 from linovia/feature/how_to_turn_pagination_off
Document how to turn pagination off
2015-11-25 12:57:25 +01:00
Daniel Hahler
e786e4c4a1 doc: clarify that crispy-forms needs to be in INSTALLED_APPS 2015-11-23 15:05:38 +01:00
Xavier Ordoquy
f3de2146ea Merge pull request #3650 from silviogutierrez/master
Documentation fix for list serializers.
2015-11-19 07:46:01 +01:00
Silvio J. Gutierrez
ece7973479 Updated comment. 2015-11-18 21:52:20 -05:00
Xavier Ordoquy
edc5a79b85 Merge pull request #3497 from Ins1ne/feature/3340
update docs about detail page link for AdminRenderer
2015-11-18 17:38:07 +01:00
Silvio J. Gutierrez
f7646627f1 Documentation fix for list serializers. 2015-11-17 19:09:49 -05:00
Will Dady
ca0841576f Removing references to get_paginate_by() as it no longer exists. 2015-11-17 15:00:00 +11:00
Denis Cornehl
3806af3d15 allow setting a custom Django Paginator in pagination.PageNumberPagination 2015-11-13 16:04:12 +01:00
Xavier Ordoquy
23460bfa41 Add a note about how to turn pagination off 2015-11-10 11:33:54 +01:00
Ryan Hiebert
f2452936e9 Allow no queryset when get_queryset overridden
The user may wish to provide a dynamic queryset on a `RelatedField`
based on the `context`. The way to do that is to create a subclass of
`RelatedField` (or a child) and override the `get_queryset` method.
However, this is undocumented, and instantiating that field without a
`queryset` argument (because it's not needed) will raise an assertion
error.

Document `.get_queryset(self)` as an official part of the API of
`RelatedField`, and don't enforce the use of `queryset` when
`get_queryset` is overridden.
2015-11-05 17:34:02 -06:00
Vedran Karačić
ede15645e0 Typo 2015-11-05 11:51:29 +01:00
Ryan Hiebert
b86e5af878 reverse needs kwargs keyword
Since we aren't passing in any args, we must specify kwargs as a keyword
argument.
2015-11-03 21:45:21 -06:00
Travis J Morton
03cb959416 typo 2015-11-02 12:58:21 -08:00
David Szotten
9a14613f41 fix image paths 2015-11-02 15:28:02 +00:00