homm
60656e9182
merge CursorPagination.decode_cursor
and _decode_cursor
...
merge `CursorPagination.encode_cursor` and `_encode_cursor`
2015-06-23 19:00:42 +03:00
homm
9a5373d41c
make PageSizePaginationMixin from all this page_size stuff
2015-06-23 18:19:38 +03:00
homm
ab03729b58
allow cursor format customization
2015-06-23 18:00:26 +03:00
José Padilla
83ef64dbf5
Document setting URL_FORMAT_OVERRIDE to None
...
This also hides the format dropdown from the
Browsable API if URL_FORMAT_OVERRIDE is disabled.
Closes #3057
2015-06-23 07:50:44 -04:00
Tom Christie
1e678791de
Merge pull request #2922 from thedrow/patch-11
...
Cache fields list for to_internal_value and to_representation
2015-06-23 08:53:32 +01:00
Tom Christie
e3b578258a
Merge pull request #2769 from nonZero/patch-1
...
Wrong error message on bad field lookup
2015-06-22 17:04:04 +01:00
Tom Christie
15a386e85d
Merge pull request #3045 from paxnovem/issue_3042
...
Fixed many=False issue on related fields
2015-06-22 15:40:59 +01:00
Markus Korn
b42b16d0e6
compat: invert logic for checking the django version when implementing
...
RequestFactory.generic()
2015-06-22 16:13:42 +02:00
Markus Korn
06c61fc511
compat: only add compat implementation of RequestFactory.generic() if not
...
provided by django
2015-06-22 14:05:56 +02:00
Omer Katz
1701ddae35
Fixed formatting of _readable_fields list comprehension to match the formatting of the _writable_fields list comprehension.
2015-06-20 08:51:03 +03:00
Brian Grohe
51cda112f5
Simplified if statement to one line solution
...
Based on feedback on the pull request, changed solution to
be simpler for issue 3042
2015-06-19 09:21:35 -04:00
José Padilla
5e917789ec
Consistent 2 space tabbing and formatting
2015-06-18 09:00:05 -04:00
Brian Grohe
d24990ece2
Fixed many=False issue in related fields
...
Added check to pop many from kwargs before passing to __init__
Fixed my lint issue from the previous commit
2015-06-17 13:48:34 -04:00
Jannon Frank
2c415d7e03
models.TextFields get mapped to serializers.CharField too
2015-06-16 14:05:19 -07:00
Xavier Ordoquy
139ba7adeb
Merge pull request #3006 from osantana/master
...
Handle invalid characters in "Authorization: token ..." headers
2015-06-16 22:40:15 +02:00
José Padilla
0be6d87fac
Fix versioning urls
2015-06-15 16:51:37 -04:00
José Padilla
7f0acbd5a5
Merge pull request #3026 from linovia/feature/format_suffix_patterns_and_trailing_slash
...
`format_suffix_patterns` is applied before the trailing slash.
2015-06-15 16:38:12 -04:00
Thomas Stephenson
a1e0bae9da
Custom serialization of PrimaryKeyRelatedField values
...
Adds a 'pk_field' parameter which can be used to proxy serialization and
deserialization of arbitrary primary key values.
2015-06-15 04:43:49 +10:00
Kevin Brown
b0889446a5
Merge pull request #3027 from linovia/feature/url_patterns_removal
...
Remove `django.conf.urls.pattern`
2015-06-11 16:40:40 -04:00
Xavier Ordoquy
1e51230f1b
Remove django.conf.urls.pattern
as it'll be removed in Django 2.0
2015-06-11 00:45:23 +02:00
Xavier Ordoquy
e7e5946c2e
format_suffix_patterns
is applied before the trailing slash.
2015-06-11 00:32:05 +02:00
hellysmile
c292b3d132
Fix set_rollback on @transaction.non_atomic_requests.
2015-06-08 07:10:57 +03:00
Ash Hoover
35c28a2a71
Include correct limits in LimitOffsetPagination link urls
2015-06-05 08:56:33 -07:00
Jannon Frank
b0752217ae
only include 'allow_blank' on CharField
2015-06-05 02:21:13 -07:00
Xavier Ordoquy
8935db1be9
Merge pull request #3003 from linovia/release/3.1.3
...
Release 3.1.3
2015-06-04 15:04:55 +01:00
Xavier Ordoquy
9a20609223
Merge pull request #3004 from linovia/translations/3.1.3
...
Translations updated for 3.1.3
2015-06-04 14:59:32 +01:00
Tom Christie
a3d6601e09
Merge pull request #3008 from linovia/feature/ipaddress-fix
...
`IPAddressField` improvements
2015-06-04 14:54:50 +01:00
Tom Christie
e8cc948f6b
Merge pull request #2695 from delinhabit/refactor-decimalfield
...
[enhancement] Refactored DecimalField to allow easier subclassing
2015-06-04 14:26:28 +01:00
Xavier Ordoquy
dee5fb5647
Merge remote-tracking branch 'reference/master' into feature/ipaddress-fix
...
Conflicts:
docs/api-guide/fields.md
2015-06-04 14:21:33 +01:00
Osvaldo Santana Neto
7ae71deb84
Handle invalid characters in headers
2015-06-03 14:55:34 -03:00
Xavier Ordoquy
051b86e6fd
Translations updated for 3.1.3
2015-06-03 17:34:13 +01:00
Xavier Ordoquy
f3dbe9bb2a
Bump to version 3.1.3
2015-06-03 16:57:18 +01:00
Xavier Ordoquy
0c66c7cfa6
Merge pull request #3000 from linovia/ovangle/uuid_format2
...
Add 'format' argument to UUIDField
2015-06-03 12:32:23 +01:00
Tom Christie
b1b47036d7
Use six.text_type for hyperlink names
2015-06-03 11:53:27 +01:00
Tom Christie
99e97fa9d3
Cleanup hyperlink rendering implementation
2015-06-03 11:47:33 +01:00
Tom Christie
ae704eec58
Fix issue with pagination control always displaying
2015-06-03 11:35:03 +01:00
Tom Christie
25bb3b1502
Use chevron control for row linking, rather than hyperlinking first item
2015-06-03 11:15:54 +01:00
Tom Christie
90f2e26679
Add Hyperlink and rendering in admin style renderer
2015-06-03 11:00:38 +01:00
Shtarev
745d8d0004
added comment
2015-06-03 09:04:28 +03:00
Xavier Ordoquy
734bf3cfe6
Merge pull request #2981 from jannon/fix-model-serializer-metadata
...
Read-Only RelatedField Metadata Failure Test and Fix
2015-06-02 15:09:05 +01:00
Xavier Ordoquy
0c97dd1806
Merge remote-tracking branch 'reference/master'
2015-06-02 13:04:57 +01:00
Xavier Ordoquy
8fa3284620
Merge remote-tracking branch 'reference/master'
2015-06-02 10:24:28 +01:00
Jannon Frank
a97c989248
fix read_only related field metadata
2015-06-02 00:40:00 -07:00
Nicolas Delaby
c2d2417237
Tell default error handler to doom the transaction on error
...
if `ATOMIC_REQUESTS` is enabled.
2015-06-02 09:19:58 +02:00
Xavier Ordoquy
d79956d40e
Translation update.
2015-06-02 00:20:46 +01:00
Xavier Ordoquy
f8eacc5bc0
Merge pull request #2993 from linovia/bug/2894
...
MultipleChoiceField empties incorrectly on a partial update using multipart/form-data (#2894 )
2015-06-01 17:48:20 +01:00
Xavier Ordoquy
14055dd3f4
Merge pull request #2989 from ticosax/duration-field
...
Add DurationField
2015-06-01 17:38:57 +01:00
Nicolas Delaby
f701ecceb7
Add DurationField
2015-06-01 18:20:53 +02:00
Xavier Ordoquy
5c90bf9cc0
Fix for #2894 thanks to @carljm
2015-06-01 16:13:35 +01:00
Xavier Ordoquy
e3f856ff1d
Merge pull request #2975 from sheppard/read-only-nested
...
can't create nested serializers for unique_together relations
2015-06-01 12:01:40 +01:00
Corentin Smith
fa29f7dd1f
Fix minor typo
2015-05-30 17:57:35 +02:00
Xavier Ordoquy
ecb3ba5e1f
Merge pull request #2948 from bimusiek/master
...
Added test ensuring DecimalField accepts `2E+2` as 200 and validates decimal place correctly.
2015-05-29 11:52:33 +02:00
S. Andrew Sheppard
8c7b5fc5c1
pop required extra_kwargs if read_only is set
2015-05-27 21:14:13 -05:00
Tom Christie
95a27a108d
Merge pull request #2933 from cancan101/overide_method_action
...
Set the action on a view when override_method regardless of its None-ness
2015-05-27 09:10:58 +01:00
Petros Moisiadis
192719eed0
Improve coding style
...
On Tom's suggestion, improve coding style by using a single-line call to getattr() with a default value instead of a multi-line if/else clause.
2015-05-19 20:00:19 +03:00
Petros Moisiadis
a96ebd74b1
Fix flake8 error
...
Fix flake8 error
2015-05-19 19:48:53 +03:00
Petros Moisiadis
c63ea01f4f
Support User model in Django 1.4 that has not a USERNAME_FIELD attribute
...
Support User model in Django 1.4 that has not a USERNAME_FIELD attribute.
2015-05-19 19:05:50 +03:00
Tom Christie
c916ad6315
Handle create and delete redirects
2015-05-19 16:30:45 +01:00
Petros Moisiadis
43b4ae752d
Import get_user_model from compat module
...
Import get_user_model from compat module to be compatible with older django versions (e.g. 1.4).
2015-05-19 18:00:17 +03:00
Petros Moisiadis
a13075486d
Compatibility code for getting user model
...
Compatibility code for getting user model
2015-05-19 17:57:27 +03:00
Tom Christie
ec8e7f27e7
Fixes for format preservation
2015-05-19 15:49:37 +01:00
Petros Moisiadis
bb002262ac
Support basic authentication with custom user models that change username field
...
Support basic authentication with custom user models with a username field that is not named 'username'.
2015-05-19 17:42:44 +03:00
Michał Hernas
e8c226c2db
Fixed lint problems
2015-05-18 16:55:40 +02:00
Michał Hernas
069ea31cfb
Added test ensuring DecimalField accepts 2E+2
as 200 and validates
...
decimal place correctly.
2015-05-18 16:42:24 +02:00
Omer Katz
67ff078388
Renamed the cached fields lists.
2015-05-17 09:54:33 +03:00
David Sanders
b7edd46313
Use simpler dict.get() rather than try/except
2015-05-16 01:01:27 +10:00
tony
0906bf2c08
fix empty and_query
2015-05-15 16:44:12 +03:00
tony
de95598a1e
removed using view.model.objects
2015-05-15 13:46:56 +03:00
David Sanders
8e84a9f6d0
Allow invalid outputs to pass through to_representation() for ChoiceField & MultipleChoiceField
2015-05-15 18:59:10 +10:00
Tom Christie
b4d82a0f55
Preserve format query param
2015-05-15 09:18:45 +01:00
tony
c47ec60ea2
no need to do distinct on every loop cycle & add analogue of distinct for oracle users
2015-05-14 17:04:22 +03:00
tony
7813d2fb35
fix DISTINCT for Oracle databases
2015-05-14 13:57:36 +03:00
Xavier Ordoquy
1a8c0b4bfc
Merge pull request #2930 from linovia/release/3.1.2
...
Release 3.1.2
2015-05-14 10:57:33 +02:00
Alex Rothberg
a804d0bd75
set the action when override_method regardless of its None-ness
2015-05-13 22:53:32 -04:00
Tom Christie
ea1145c5aa
Merge pull request #2905 from ticosax/django-object-perm-get_queryset
...
Allow DjangoObjectPermissions to use views that define get_queryset
2015-05-13 13:39:59 +01:00
Nicolas Delaby
031ac2a292
Allow DjangoObjectPermissions to use views that define get_queryset
2015-05-13 14:26:44 +02:00
Xavier Ordoquy
fb4ba3ad3c
Bump version to 3.1.2
2015-05-13 09:44:15 +02:00
Tom Christie
9424e59b9e
Styling of nested lists/objects in detail view
2015-05-12 16:28:49 +01:00
Tom Christie
a1421cd4a3
Basic formatting for dict and list values
2015-05-12 16:18:45 +01:00
Tom Christie
9a504efd26
Basic formatting for admin cells
2015-05-12 15:21:49 +01:00
Tom Christie
995aa47570
First pass templates for admin style
2015-05-12 14:49:09 +01:00
Marco Vellinga
478b1dbd06
Use get_queryset() for RelatedField choices property instead of self.queryset.all()
2015-05-11 15:28:10 +02:00
Omer Katz
1ee3173583
Cache fields list for to_internal_value and to_representation.
2015-05-09 14:37:49 +03:00
Tom Christie
abcd6f2b9e
Merge pull request #2869 from ryangallen/datefield
...
DateField to_representation can handle str and empty values. Fixes #2656 , #2687 .
2015-05-01 16:33:43 +01:00
Tom Christie
2eb9107b87
Merge pull request #2798 from Boomerangz/depth-should-reduce
...
Depth should reduce on nested ModelSerializer classes.
2015-04-27 16:22:22 +01:00
Tom Christie
2394577dc2
Merge pull request #2757 from ekiourk/2630/Raise-exception-when-ModelSerializer-used-with-abstract-model
...
Raise error when ModelSerializer used with abstract model
2015-04-27 14:47:32 +01:00
José Padilla
9809f4d36a
Merge pull request #2809 from aparsons/master
...
Move ul.breadcrumb margin to bootstrap-tweaks.css
2015-04-26 11:15:50 -04:00
Tom Christie
450c541462
Merge pull request #2868 from ticosax/versioning-header-all
...
Check AcceptHeaderVersioning with content negotiation in place
2015-04-24 15:19:51 +01:00
Allard Hoeve
9a794beb1e
Remove mention of Django's built-in ValidationError in docstring
...
The `exception_handler` does not actually handle django.core.exceptions.ValidationError, so remove any mention of it.
This closes #2872
2015-04-24 15:37:42 +02:00
Ryan Allen
cbea03c85b
DateField to_representation can handle str and empty values. Fixes #2656 , #2687 .
2015-04-23 19:31:46 -05:00
Nicolas Delaby
63511c03d0
Check AcceptHeaderVersioning with content negotiation in place
2015-04-23 14:19:39 +02:00
Nicolas Delaby
24e9473036
Improve error message.
2015-04-22 11:22:37 +02:00
Nicolas Delaby
6f66798ad3
Prevent empty queryset
s to raises AssertionError.
2015-04-22 11:13:09 +02:00
Nicolas Delaby
c2e536bfda
Tell DjangoModelPermissions to rely on get_queryset first.
2015-04-22 10:18:30 +02:00
Tom Christie
0ca1145456
Merge pull request #2853 from ryangallen/master
...
Set IntegerField class variable for compiled decimal regex, comment for ...
2015-04-21 16:00:37 +01:00
Ryan Allen
32acc4a72b
Set IntegerField class variable for compiled decimal regex, comment for purpose
2015-04-21 10:52:52 -04:00
Tom Christie
605369e2b4
Merge pull request #2807 from iorlas/patch-2
...
Now it is possible to display viewset w/o paginator
2015-04-21 15:07:11 +01:00
Ryan Allen
1f10a39d31
Match IntegerField validation with Django's, preventing decimal values being stored as ints, fixes #2835 .
...
Match IntegerField validation with Django IntegerField, prevents decimal values being stored as ints, fixes #2835
On branch master
2015-04-20 11:03:05 -04:00
Adam Parsons
72230a913e
Removed color from default
2015-04-18 16:52:20 -05:00
Adam Parsons
324ccc3664
Moved breadcrumb color to bootstrap-tweaks
...
Moved to color associated with the breadcrumb to the tweaks style sheet.
2015-04-18 16:50:32 -05:00
Tymur Maryokhin
1ddfef1212
Removed deprecated '.model' attribute check
2015-04-12 17:12:01 +02:00
Thomas Stephenson
236b731072
Add 'format' argument to UUIDField
...
To allow serializations to control the representation format of a
UUID value
2015-04-12 22:07:25 +10:00
Adam Parsons
77460d4bca
Moved ul.breadcrumb margin to bootstrap-tweaks.css
...
When importing other bootstrap themes from sites like bootswatch, the
margin in default.css persists and adds a 70px margin below the header.
This change will remove that margin when users choose to use a different
bootstrap theme.
2015-04-08 20:10:33 -05:00
iorlas
548ac9a65e
Now it is possible to display viewset w/o paginator
...
Since pagination is now included in every generic viewset, we should have ability to disable it and we have it: paginator=None or pagination_class=None. But this piece of code relies on existence of property instead of its value.
2015-04-08 20:32:02 +03:00
Igor Zygin
2d5b4f4cc9
Depth should reduce
...
Depth should reduce
2015-04-06 10:13:25 +06:00
José Padilla
2e6d39dbae
Merge pull request #2754 from bleib1dj/enhancement_dont_require_pk_strictly_related
...
Enhancement dont require pk strictly related #2745
2015-04-04 22:01:06 -04:00
Andrea Grandi
d6effbf779
Remove unpack_ipv4 parameter
2015-04-02 19:40:17 +01:00
Michael Blatherwick
56ec7b152e
Fixed docstring typo
2015-03-27 18:00:19 +00:00
Andrea Grandi
466575bee6
Lowercase the input
2015-03-26 18:14:53 +00:00
Udi Oron
b95ef25cbb
Wrong error message on bad field lookup
2015-03-26 20:13:35 +02:00
José Padilla
55ee588f6e
Use default reason phrases from HTTP standard.
...
Closes #2763
2015-03-25 13:27:47 -04:00
Ilias Kiourktsidis
0888f9cfc3
Use _meta instead of Meta on is_abstract_model function
2015-03-25 12:00:20 +00:00
Simon Charette
87208021e2
Metadata should detect null boolean field type.
2015-03-24 21:31:35 -04:00
Devon Bleibtrey
b1c1867b16
Swapping to hassattr logic for pk attribute references in relations
2015-03-23 11:40:33 -04:00
Ilias Kiourktsidis
486f0a9367
Raise error when ModelSerializer used with abstract model
2015-03-23 15:01:19 +00:00
Devon Bleibtrey
7ac3c3fff7
Added enhancement for pk reference in many=True relations
2015-03-23 10:42:42 -04:00
Tom Christie
a90dbe3bd9
Merge pull request #2724 from delinhabit/namespaced-versioning-non-api-reversal
...
Handle reversal of non-API view_name in HyperLinkedRelatedField
2015-03-23 11:35:21 +00:00
Tom Christie
f7cd7a1c1f
Latest translation strings
2015-03-23 11:32:28 +00:00
Tom Christie
e73ddddc3a
Merge pull request #2726 from linovia/release/3.1.1
...
Release notes for 3.1.1 and version bump.
2015-03-23 11:20:23 +00:00
Tom Christie
7872d0acbf
Escape tab switching cookie
2015-03-23 11:20:09 +00:00
Tom Christie
166801063d
Merge pull request #2743 from maurodoglio/serializer_class-html-renderer
...
Use `serializer_class` for browsable API display, even on plain APIView.
2015-03-23 09:43:39 +00:00
Devon Bleibtrey
8a58b1a380
Added ability to define backend identification attribute
2015-03-22 13:50:05 -04:00
mdoglio
77c44d8c63
Make BrowsableAPIRenderer use serializer_class when present
2015-03-22 14:36:30 +00:00
mdoglio
d0126b7e31
Set serializer_class on ObtainAuthToken view
2015-03-22 12:35:56 +00:00
mdoglio
fde02ae6eb
AuthTokenSerializer - properly render password field
2015-03-22 12:13:28 +00:00
Ion Scerbatiuc
fac2785341
Handling the fallback in reverse
2015-03-19 16:12:28 -07:00
Xavier Ordoquy
164be174ea
Release notes for 3.1.1 and version bump.
2015-03-19 23:29:10 +01:00
Ion Scerbatiuc
90280a3437
Handle reversal of non-API view_name in HyperLinkedRelatedField
2015-03-19 14:16:45 -07:00
Di Wu
48e1f151c5
use SAFE_METHODS and make tuple
2015-03-16 22:13:07 -07:00
Tom Christie
2148f32007
Merge pull request #2700 from tomchristie/do-not-paginate-if-page-size-none
...
Do not paginate if PAGE_SIZE=None
2015-03-16 12:15:50 +00:00
Tom Christie
992971d648
Merge pull request #2631 from Ins1ne/feature/issue-2559
...
Allow blank/null on radio.html choices
2015-03-16 12:11:33 +00:00
Tom Christie
5cd0714dca
Do not paginate if PAGE_SIZE=None
2015-03-16 12:05:31 +00:00
Tom Christie
4cd49d5de3
Merge branch 'master' of https://github.com/tomchristie/django-rest-framework
2015-03-16 11:57:42 +00:00
Tom Christie
c573e7b4a8
Latest translation strings
2015-03-16 11:57:28 +00:00
Ion Scerbatiuc
022c4d540b
Refactored DecimalField to allow easier subclassing
2015-03-14 07:16:17 -07:00
mochawich
2266fec99d
fixed missing anchor closing tag
...
when next_url is none, big part of page html will be rendered under the <a href='#'> as it does not have a closing tag.
2015-03-13 17:03:51 +01:00
Raphaël Barrois
8d0dbc8092
Fix lookup_url_kwarg handling in viewsets.
...
The ``lookup_url_kwarg`` is intended to set the name of a field in the
URL regexps when using custom ``lookup_field``, but the routers ignore
it altogether.
2015-03-13 01:07:20 +01:00
Dirk Moors
6c1d0d7ed0
Fixed problem with imporing rest_framework.views in apps.py
2015-03-12 16:36:26 +01:00
Carlton Gibson
53e1a2fcb9
Merge pull request #2637 from mdentremont/topic/allow-serialize-unsaved-with-relations
...
Support serializing unsaved models with related fields.
2015-03-08 20:22:49 +01:00
Aider Ibragimov
7159b31023
update vertical and inline layouts for radio choices
2015-03-07 07:17:22 +03:00
José Padilla
0e21f1c4f4
Merge pull request #2640 from Crystalnix/fix-remove-mergedict
...
Remove `MergeDict`
2015-03-06 19:17:58 -04:00
Matt d'Entremont
fb58ef043c
Add support for serializing models with m2m related fields
...
- In both ManyRelatedField, provide an empty return when trying to
access a relation field if the instance in question has no PK (so
likely hasn't been inserted yet)
- Add relevant tests
- Without these changes, exceptions would be raised when trying to
serialize the uncreated models as it is impossible to query
relations without a PK
- Add test to ensure RelatedField does not regress as currently
supports being serialized with and unsaved model
2015-03-06 12:50:37 -04:00
Tom Christie
58dfde7fcd
Tweaks for cursor pagination and docs
2015-03-06 10:22:32 +00:00
Egor Yurtaev
ce31e36973
Remove MergeDict
...
The class MergeDict is deprecated and will be removed in Django 1.9
2015-03-05 18:34:42 +06:00
Tom Christie
f7917928c0
Merge branch 'master' of https://github.com/tomchristie/django-rest-framework
2015-03-04 16:17:44 +00:00
Tom Christie
18cc0230bf
Clean up pagination attributes
2015-03-04 15:51:00 +00:00
Aider Ibragimov
c44376c613
remove unnecessary check
2015-03-04 14:17:58 +03:00
Aider Ibragimov
fdd811ec53
Allow blank/null on radio.html choices
2015-03-04 08:22:46 +03:00
Tymur Maryokhin
391b0ae21b
Call default.set_context() only on create. Refs #2619 .
2015-03-03 17:02:12 +01:00
Aider Ibragimov
e5d95e319e
fix FilePathField kwargs for django < 1.5
2015-03-03 16:58:04 +03:00
Aider Ibragimov
04cc1964bd
remove dict compehension
2015-03-03 16:45:20 +03:00
Aider Ibragimov
5f8338e276
Merge branch 'master' of https://github.com/tomchristie/django-rest-framework into feature/filepathfield
2015-03-03 14:34:18 +03:00
Aider Ibragimov
c20a0250df
add FilePathField, update docs
2015-03-03 14:34:06 +03:00
Aider Ibragimov
de72022f80
Merge branch 'master' of https://github.com/Ins1ne/django-rest-framework into feature/ipaddress
2015-02-28 14:29:27 +03:00
Aider Ibragimov
313b3d7c3b
Update ModelSerializer mappings
2015-02-28 10:18:47 +03:00
Aider Ibragimov
4d5eee04a0
add IPAddressField, update docs
2015-02-28 10:11:38 +03:00
Kevin Wood
78e8b1b010
Updated CreateOnlyDefault to call set_context on its default (if callable)
2015-02-27 22:14:15 -08:00
Janusz Harkot
9098856d46
fix DictKey initial value
2015-02-27 19:46:36 +01:00
Ian Foote
32c885c2a0
Ensure validators are new-style classes on python2
2015-02-27 15:22:19 +00:00
Tom Christie
cda74b5997
Merge pull request #2608 from ezheidtmann/dont-swallow-errors-in-callable-sources
...
Dont swallow errors in callable sources
2015-02-27 09:13:01 +00:00
Evan Heidtmann
e6b06c34c1
Add explanation for this exception mutation
2015-02-26 09:20:17 -08:00
Evan Heidtmann
bdb73d5588
Avoid swallowing exceptions thrown in callable attributes
2015-02-26 09:05:46 -08:00
Tom Christie
c66f23391a
Merge pull request #2572 from Ins1ne/master
...
Fix UniqueTogetherValidator for NULL values
2015-02-26 15:56:18 +00:00
Tom Christie
d219fc0d81
Merge pull request #2602 from dbrgn/fix-1602
...
List resource not updated between requests
2015-02-26 15:52:54 +00:00
Tom Christie
88cd86c956
Merge pull request #2587 from jpadilla/select-multiple-disabled
...
Disable select field if no choices available
2015-02-26 12:54:58 +00:00
Tom Christie
03818ed004
Pagination tweaks and docs
2015-02-26 12:48:34 +00:00
Danilo Bargen
86c5fa2401
Force-evaluate querysets (see #2602 )
2015-02-25 18:54:47 +01:00
Yannick PEROUX
940cf2e2e0
Remove duplicated code in routers.SimpleRouter
2015-02-25 13:29:07 +01:00
Yannick PEROUX
bdc64d4e73
Fix removal of url_path on @detail_route and @list_route. Fix # #2583
...
SimpleRouter.get_routes was popping out the url_path kwarg from
list_route and detail_route decorators. This was causing troubles
when the route was re-used, for example if the viewset was
inherited.
2015-02-25 11:54:11 +01:00
Tom Christie
b69032f3a7
Merge pull request #2586 from rense/master
...
Set field max_length/max_value as actual attribute.
2015-02-21 15:31:02 +00:00
Rense VanderHoek
91416632a8
DecimalField fix
...
max_value and min_value are not in kwargs
2015-02-21 12:31:37 +01:00
Tymur Maryokhin
7345830c88
Check if sessions are enabled before calling logout. Closes #2545 .
2015-02-20 20:12:39 +01:00
Rense VanderHoek
9cb547b85f
Validator-fix, added min/max fields to test_metadata
2015-02-20 17:34:49 +01:00
José Padilla
bb8690cfb3
Disable select field if no choices available
2015-02-20 11:43:12 -04:00
Rense VanderHoek
c8609ba652
Set field length/values as actual attributes.
...
The SimpleMetadata class in metadata.py tries to getattr() attributes
on a field. For this to work, max_length and min_length have to be
actually set as an attribute.
Did the same for min_value and max_value and added those two to
SimpleMetadata.get_field_info
2015-02-20 16:31:12 +01:00
Rubén Durá Tarí
60617f876a
Fixes HiddenField being rendered in HTMLFormRenderer
2015-02-20 07:50:15 -04:00
Aider Ibragimov
fe8d95f93e
Skip validation of NULL field only if it part of unique_together
2015-02-19 18:03:44 +03:00
Aider Ibragimov
3d85473edf
Fix UniqueTogetherValidator for NULL values
2015-02-18 21:00:12 +03:00
Tom Christie
e45e0f0567
Update version
2015-02-17 13:44:42 +00:00
José Padilla
85bf127943
Merge pull request #2567 from carltongibson/18-warning
...
Move `importlib` fallback into compat.
2015-02-17 08:39:06 -04:00
Tom Christie
dbd2352165
Fixes for latest pep8 updates. Refs #2563 .
2015-02-17 10:58:00 +00:00
Carlton Gibson
c5eb5b2201
Move importlib
fallback into compat.
2015-02-17 11:55:15 +01:00
Carlton Gibson
daf1d59d0f
Adjust importlib import
2015-02-17 11:22:37 +01:00
Tom Christie
4248a8d3fc
Merge pull request #2198 from tomchristie/version-3.1
...
Version 3.1
2015-02-13 13:38:44 +00:00
Tom Christie
c3425accde
Fix incorrect HTML parsing for DictField
2015-02-11 14:19:07 +00:00
donewell
9a9a00bff2
simplify argument handling
2015-02-11 11:15:01 +00:00
Xavier Ordoquy
637af1fc14
Merge pull request #2540 from linovia/release/3.0.5
...
Release/3.0.5
2015-02-10 23:48:38 +01:00
Xavier Ordoquy
59b3fe8f39
Bumped the version to 3.0.5
2015-02-10 22:48:04 +01:00
donewell
9ea615af14
add message to custom permission
...
change detail to message and update text
2015-02-10 20:11:53 +00:00
Carlton Gibson
3522b69394
Add distinct
call in filter_queryset
2015-02-10 10:51:38 +01:00
Tom Christie
fbb21caaaa
Merge master
2015-02-09 20:43:50 +00:00
Tom Christie
b2939c157d
Fixes for latest version of pep8
2015-02-09 17:43:20 +00:00
Tom Christie
54d82f59ed
Py3 compat fix
2015-02-09 17:19:22 +00:00
Tom Christie
d13c807616
Fix misleading AttributeErrors
2015-02-09 17:02:54 +00:00
Tom Christie
0240df1a38
Minor internal API cleanpu
2015-02-06 16:15:10 +00:00
Tom Christie
670723f021
Minor cleanups/improvements to ModelSerializer API
2015-02-06 15:45:02 +00:00
Tom Christie
dec3493d7c
Minor cleanup
2015-02-06 14:43:43 +00:00
Tom Christie
a435b1b355
Merge branch 'version-3.1' of git://github.com/jpadilla/django-rest-framework into version-3.1
2015-02-06 14:39:31 +00:00
Tom Christie
1f99612845
Upgrade pending deprecations to deprecations
2015-02-06 13:21:35 +00:00
José Padilla
7f801b9a01
Add trim_whitespace to CharField #2517
...
If set to `True` then leading and trailing
whitespace is trimmed. Defaults to `True`.
2015-02-06 01:09:19 -04:00
Kaptian
fffde8a63b
Update throttling.py
...
Use pk pseudo attribute for identifying the user (in case the user model is not the default and has a different column name for the unique id)
2015-02-05 13:27:26 -08:00
José Padilla
c696b0ba0c
Fix possible nested array fields
2015-02-05 10:12:14 -04:00
José Padilla
720d154c83
Merge remote-tracking branch 'upstream/version-3.1' into version-3.1
2015-02-04 23:34:20 -04:00
José Padilla
48fa77c09e
Add child to ListField when using ArrayField
2015-02-04 23:33:59 -04:00
Tom Christie
e1c4513312
Fix NamespaceVersioning with hyperlinked serializer fields
2015-02-05 00:58:09 +00:00
Tom Christie
83673e8f74
Merge branch 'version-3.1-2489' of git://github.com/brandoncazander/django-rest-framework into brandoncazander-version-3.1-2489
2015-02-04 23:32:48 +00:00
Tom Christie
3b00824560
Merge pull request #2518 from longhotsummer/patch-1
...
FIX: Don't default to list in method args
2015-02-04 14:30:53 +00:00
Greg Kempe
e13d2af137
Parens around if clause
2015-02-04 16:26:23 +02:00
Greg Kempe
d920683237
Use inline if
2015-02-04 16:13:30 +02:00
Ofir Ovadia
58e7bbc8ec
Prefetching the user object when getting the token in TokenAuthentication.
...
Since the user object is fetched 4 lines after getting Token from the database, this removes a DB query for each token-authenticated request.
2015-02-04 16:08:41 +02:00
Greg Kempe
7bb5fd270d
FIX: Don't default to list in method args
...
Fixes @list_route and @detail_route so that they don't initialize their `methods` parameter as a list. In some cases the list gets cleared, and the result is that default parameter is now empty, and may get reused unexpectedly.
2015-02-04 16:03:03 +02:00
Tom Christie
8b4ce5c636
Minor authentication message improvement.
2015-02-04 09:07:10 +00:00
Brandon Cazander
77d061d234
Provide rest_framework.resolve. Fixes #2489
2015-02-02 20:37:33 -08:00
Jason Yan
4b65e9e42b
Fixed missing whitespace in error string.
2015-02-02 16:14:34 -08:00
Omer Katz
8f1d42e7d5
Fixed typos in docstrings.
2015-02-02 10:50:54 +02:00
José Padilla
b844cc4bb6
Merge remote-tracking branch 'upstream/version-3.1' into version-3.1
...
Conflicts:
rest_framework/serializers.py
2015-02-01 15:34:33 -04:00
José Padilla
37dce89354
Add support for Django 1.8’s ArrayField
2015-02-01 15:33:34 -04:00
Tom Christie
e63f49bd1d
Fix field mappings for 1.8 fields
2015-01-31 19:59:52 +00:00
Tom Christie
2cc4cb2465
Fix error text in test.
2015-01-31 08:53:40 +00:00
Tom Christie
53b29f0902
_closable_objects as an empty list, not deleted
2015-01-31 08:27:17 +00:00
Tom Christie
6838f17325
Add built-in translations.
2015-01-30 16:41:21 +00:00
Tom Christie
0d96cf2ca2
Latest translation source messages.
2015-01-30 16:27:49 +00:00
José Padilla
760b25bc20
Fix AttributeError on renamed _field_mapping
2015-01-30 11:36:03 -04:00
Tom Christie
4ee4b4f2dc
Merge master
2015-01-30 14:00:25 +00:00
Tymur Maryokhin
ba7dca893c
Removed router check for deprecated '.model' attribute
2015-01-29 17:28:03 +01:00
Tom Christie
6d89430dd2
Merge pull request #2475 from sdreher/master
...
ManyRelatedField.get_value clearing field on partial update
2015-01-28 09:26:49 +00:00
Tom Christie
81c2562ec4
Merge pull request #2479 from lucaswiman/custom_user_shim_db_table
...
Use the proper db_table argument when constructing meta
2015-01-28 09:20:27 +00:00
Tom Christie
761f264f59
Merge pull request #2473 from tomchristie/reload-settings
...
Reload api_settings when using Django's 'override_settings'
2015-01-28 09:05:51 +00:00
Lucas Wiman
a1eba885e2
Use the proper db_table argument when constructing meta
2015-01-27 19:30:44 -08:00
Brandon Cazander
ac87490b91
Clone the versioning_scheme when necessary. Fixes #2477
2015-01-27 17:10:17 -08:00
Susan Dreher
8c3f82fb18
🐛 ManyRelatedField get_value clearing field on partial update
...
A PATCH to a serializer's non-related CharField was clearing an ancillary StringRelatedField(many=True) field.
The issue appears to be in the ManyRelatedField's get_value method, which was returning a [] instead of empty
when the request data was a MultiDict.
This fix mirrors code in fields.py, class Field, get_value, Ln. 272, which explicitly returns empty on a partial update.
Tests added to demonstrate the issue.
2015-01-27 16:18:51 -05:00
Xavier Ordoquy
5b369bf5fe
Bumped the version.
2015-01-27 19:45:37 +01:00
Tom Christie
65bca59ea5
Reload api_settings when using Django's 'override_settings'
2015-01-27 13:51:30 +00:00
Brandon Cazander
bf58c1265d
Set a version attribute on cloned requests if necessary.
2015-01-26 22:56:57 -08:00
Brandon Cazander
ed04725822
Use enhanced request when cloning requests for checking permissions on other methods. Fixes #2455
2015-01-24 01:44:40 -08:00
Tom Christie
0cb5acee75
Merge pull request #2453 from alexsdutton/data-and-files-none-data
...
Pass {} as data to DataAndFiles, as it ends up in a MergeDict
2015-01-23 18:03:40 +00:00
Alexander Dutton
a1fa7218eb
Pass {} as data to DataAndFiles, as it ends up in a MergeDict
...
In the same vein as #2399 .
2015-01-23 16:52:24 +00:00
Tom Christie
35f6a82462
Added DictField and support for HStoreField.
2015-01-23 16:27:23 +00:00
Tom Christie
889a07f556
Support assignment in ClassLookupDict
2015-01-23 15:32:21 +00:00
Tom Christie
e8db1834d3
Added UUIDField.
2015-01-23 15:24:06 +00:00
Tom Christie
8f25c0c53c
Add 1.8 support
2015-01-23 14:56:15 +00:00
Tom Christie
39f26c9eca
Merge master
2015-01-23 14:28:59 +00:00
Tom Christie
f3b6eedb8a
More sensible response caching.
2015-01-23 12:56:55 +00:00
Tom Christie
f1ac9d3f9b
More graceful handling of malformed Content-Disposition
2015-01-23 12:26:44 +00:00
Tom Christie
25a703b42c
Work around meta API differences
2015-01-23 11:15:11 +00:00
Tom Christie
43d983fae8
Add paging controls
2015-01-22 17:25:12 +00:00
Tom Christie
0822c9e558
Cursor pagination now works with OrderingFilter
2015-01-22 16:12:05 +00:00
Tom Christie
408261ee02
Support ordering attribute either on view or on pagination class for CursorPagination
2015-01-22 15:15:52 +00:00
Tom Christie
83a82b44a5
Support for tuple ordering in cursor pagination
2015-01-22 15:07:01 +00:00
Tom Christie
38a2ed6f62
Python 3 fixes for cursor pagination
2015-01-22 14:04:25 +00:00
Tom Christie
ca372ef6ef
Fix for python 3
2015-01-22 13:50:51 +00:00
Tom Christie
94b5f7a86e
Tidy up cursor tests and make more comprehensive
2015-01-22 12:14:52 +00:00
Tom Christie
f1af603fb0
Tests for reverse pagination
2015-01-22 10:51:04 +00:00
Tom Christie
cae9528c54
Add support for reverse cursors
2015-01-22 10:28:19 +00:00
Tom Christie
5e52f0fd8c
Merge branch 'version-3.1' into cursor-pagination
2015-01-21 20:29:58 +00:00
Xavier Ordoquy
15f797fd3e
Owned by import *
2015-01-21 19:46:31 +01:00
Xavier Ordoquy
857185cf07
Workaround Django issue 24198.
2015-01-21 19:29:40 +01:00
Tom Christie
4cf03e30ff
Do not render HTML output for hidden fields. Closes #2410 .
2015-01-21 14:27:51 +00:00
Tom Christie
e59b3d1718
Make ReturnDict cachable. Closes #2360 .
2015-01-21 14:18:13 +00:00
Tom Christie
9ec08ce578
Merge master
2015-01-21 13:12:14 +00:00
Tom Christie
da6ef3d0b0
Allow missing fields option for inherited serializers. Closes #2388 .
2015-01-21 13:03:37 +00:00
Tom Christie
e5b94f7b7b
Merge branch 'version-3.1' into cursor-pagination
2015-01-19 15:23:08 +00:00
Tom Christie
3cc39ffbce
NotImplemented -> NotImplementedError
2015-01-19 15:22:38 +00:00
Tom Christie
6065cdbd93
Merge master
2015-01-19 15:16:57 +00:00
Tom Christie
fdeef89ba7
Merge branch 'master' of https://github.com/tomchristie/django-rest-framework
2015-01-19 14:48:42 +00:00
Tom Christie
46a3eda08d
NotImplemented -> NotImplementedError
2015-01-19 14:48:13 +00:00
Tom Christie
4f3c3a06cf
Drop trailing whitespace on indented JSON output. Closes #2429 .
2015-01-19 14:41:10 +00:00
Alexander Dutton
af05820b1b
NotImplemented is not an exception
...
`NotImplemented` is a singleton object, not an exception. You should be raising `NotImplementedError` here instead.
2015-01-19 14:23:13 +00:00
Tom Christie
0dffc46cb7
ReturnDict and ReturnList repr as standard dict/list. Closes #2421 .
2015-01-19 14:21:09 +00:00
Tom Christie
da1db34a36
Handle UUID objects in JSONEncoder. Closes #2433 .
2015-01-19 14:19:01 +00:00
Fabien Bochu
5484d570cb
Fix timedelta JSON serialization on Python 2.6.
2015-01-19 13:09:08 +01:00
Tom Christie
dbb684117f
Add offset support for cursor pagination
2015-01-19 09:24:42 +00:00
Tom Christie
492f3c410d
Cleaning up cursor implementation
2015-01-17 00:59:02 +00:00
Tom Christie
4919492582
First pass at cursor pagination
2015-01-17 00:10:43 +00:00
Tom Christie
86d2774cf3
Fix compat issues
2015-01-16 20:30:46 +00:00
Tom Christie
8b0f25aa0a
More pagination tests & cleanup
2015-01-16 16:55:46 +00:00
Tom Christie
53edd37df5
Tests for LimitOffsetPagination
2015-01-15 21:07:05 +00:00
Tom Christie
68dfa369b5
Flake 8 fixes
2015-01-15 16:55:04 +00:00
Tom Christie
d76e83dd78
Tweaks, and add pagination controls for offset/limit.
2015-01-15 16:52:07 +00:00
Tom Christie
313aa727e3
Tweaks
2015-01-14 17:46:41 +00:00
Tom Christie
3833a5bb8a
Include pagination control in browsable API
2015-01-14 16:51:26 +00:00
Tom Christie
f13fcba9a9
Include paragraph around view description in browable API
2015-01-14 13:20:02 +00:00
Tom Christie
4d287c7aef
Include paragraph around view description in browable API
2015-01-14 13:19:56 +00:00
Tom Christie
4ce4132e08
Preserve ordering on relationship drop-down choices. Closes #2408 .
2015-01-14 12:56:03 +00:00
Tom Christie
1bcec3a0ac
API tweaks and pagination documentation
2015-01-13 17:14:13 +00:00
Tom Christie
fb0a434f9b
Merge pull request #2399 from askholme/master
...
Fix for FileUploadParser with 3.x
2015-01-12 12:21:35 +00:00
José Padilla
cc13ee0577
Fix error when NUM_PROXIES is greater than one
2015-01-12 08:12:24 -04:00
José Padilla
d6d08db0dd
Fix ident format when using HTTP_X_FORWARDED_FOR
...
If NUM_PROXIES setting is set to None,
HTTP_X_FORWARDED_FOR might be used as is, which
might contain spaces and cause errors on
cache backends like memcached.
2015-01-11 10:58:08 -04:00
Ask Holme
d6bff10f98
Make FileUploadParser work with standard django API
...
Output from parsers ends up in a Django MergeDict and they exists elements to be dicts - not None
2015-01-10 18:15:21 +01:00
Tom Christie
73feaf6299
First pass at 3.1 pagination API
2015-01-09 15:30:36 +00:00
Tom Christie
11efde8905
Merge pull request #2373 from jakul/document-translations-3.1
...
Document how to translate DRF error messages (version 3.1)
2015-01-09 11:57:02 +00:00
Xavier Ordoquy
02ee3871ae
Merge remote-tracking branch 'origin/master' into release/3.0.3
2015-01-08 23:24:19 +01:00
Craig Blaszczyk
1368c31a70
remove unused import
2015-01-08 17:16:15 +00:00
Tom Christie
4d9e7a5356
Ammend docstring to use python2/3 compatible example.
2015-01-08 15:38:27 +00:00
Tom Christie
b33a6cbff1
Ensure urlparse is not publically exposed in compat.py - less chance of accidental conflict.
2015-01-08 14:16:58 +00:00
Craig Blaszczyk
734f8f2667
restore Django 404
2015-01-07 18:22:40 +00:00
Craig Blaszczyk
58ec7669ae
swap backticks for double quotes
2015-01-07 18:22:30 +00:00
Xavier Ordoquy
b7015ea898
Bumped the version to 3.0.3.
2015-01-07 19:11:17 +01:00
Craig Blaszczyk
91e316f781
prefer single quotes in source and double quotes in user visible strings; add some missing full stops to user visible strings
2015-01-07 12:46:23 +00:00
Craig Blaszczyk
9a4267049b
use double quotes in user messages
2015-01-07 12:33:37 +00:00