Commit Graph

989 Commits

Author SHA1 Message Date
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