Commit Graph

1401 Commits

Author SHA1 Message Date
Tom Christie
4bc829d4e9 Merge pull request #1298 from craigds/fix-nested-serializers-with-renamed-fields
Fix nested serializers with renamed fields
2013-12-16 01:18:31 -08:00
Tom Christie
fc2dee844a Don't import compat.py from authtoken.models. Closes #1297 2013-12-16 08:59:10 +00:00
Craig de Stigter
4a134eefa2 Fix expansion of writable nested serializers where the inner fields have source set. 2013-12-16 15:55:54 +13:00
Tom Christie
a87c55a93a Compat fixes for django-oauth-plus versions 2.0-2.2.1 2013-12-13 21:57:07 +00:00
Tom Christie
fac6d1a36e Merge branch 'master' of git://github.com/philipforget/django-rest-framework into philipforget-master 2013-12-13 20:40:11 +00:00
Tom Christie
193af483ef Add notes on lookup_prefix argument and why it's there even though unused by the default implementations. 2013-12-13 20:22:56 +00:00
Tom Christie
fbaba0a309 Merge pull request #1281 from alanjds/router-prefix-patch
'lookup_prefix' on SimpleRouter.get_lookup_regex, easing code de-duplication
2013-12-13 12:19:49 -08:00
Kevin Brown
90edcbf938 Fix default values always being False for browsable API
This fixes a bug that was introduced in 28ff6fb [1] for the
browsable API, specifically with how it handled default values
for boolean fields.  Previously, it had a global default for
boolean fields set to `False`, which was different than the
standard None that was used elsewhere.  Because this only needed
to be done for the browsable API, a fix was put into place that
only set the default to `False` when form data was passed into
the serializer.  This had the unintended side effect of overriding
any default set on the boolean field.

This fixes #1101 [2] by only overriding the default if the default is
`None`, which is the default for all fields.

[1]: 28ff6fb1ec
[2]: https://github.com/tomchristie/django-rest-framework/issues/1101
2013-12-13 13:20:29 -05:00
Tom Christie
0453cbd56b Clean up implementation 2013-12-13 11:09:54 +00:00
Tom Christie
a129bdd0f0 Merge pull request #1234 from linovia/bugfix/nested_models_without_related_name
Fixed the nested model serializers in case of the related_name isn’t set...
2013-12-13 03:06:14 -08:00
Alan Justino
d3a118c728 SimpleRouter.get_lookup_regex got lookup_prefix
This allows @alanjds/drf-nested-routers to not duplicate/monkeypatch work made here
2013-12-10 17:14:17 -02:00
Tom Christie
3a1c40f814 Refine model manager behavior so as not to use the behavior in incorrect cases. Closes #1205 2013-12-10 08:46:44 +00:00
Tom Christie
ddd17c69e7 Fix compat issues for #1231 2013-12-09 09:24:10 +00:00
Tom Christie
a6ca943faa Merge branch 'issue-1231-jsonencoder' of git://github.com/mbox/django-rest-framework into mbox-issue-1231-jsonencoder 2013-12-09 08:50:31 +00:00
Tom Christie
80ef2685e5 Merge master 2013-12-09 07:45:45 +00:00
Tom Christie
4e9385e709 Drop unneeded assert 2013-12-09 07:37:13 +00:00
Tom Christie
06d8a31e13 Catch and mask ParseErrors that occur during rendering of the BrowsableAPI. 2013-12-09 07:34:08 +00:00
Tom Christie
910de38a9c Version 2.3.10 2013-12-06 22:13:50 +00:00
Chuck Harmston
cf6c11bd4b Raise appropriate error in serializer when making a partial update to set a required RelatedField to null (issue #1158) 2013-12-06 14:00:23 -06:00
Tom Christie
1f8069c0a9 Boilerplate cuteness 2013-12-05 11:05:25 +00:00
Tom Christie
38d78b21c0 Remove Content-Type header from empty responses. Fixes #1196 2013-12-03 16:55:11 +00:00
Tom Christie
774298f145 First pass at a test for ParseErrors breaking the browsable API 2013-12-03 16:18:35 +00:00
Tom Christie
344cd865ab Merge pull request #1250 from Ian-Foote/choice_field
Add choices to options metadata for ChoiceField.
2013-12-03 08:03:02 -08:00
Tom Christie
c1d9a96df0 Catch errors during parsing and set empty .DATA/.FILES before re-raising. 2013-12-03 08:58:05 +00:00
Pablo Recio
699ec7236b Adds pre_delete and post_delete hooks on 2013-12-03 00:07:41 +00:00
Omer Katz
b8f8fb7779 Updated the assertion message of the ImageField. 2013-11-27 13:26:49 +02:00
Ian Foote
8d09f56061 Add unittests for ChoiceField metadata.
Rename 'name' to 'display_name'.
2013-11-27 11:06:42 +00:00
Ian Foote
2484fc9141 Add more context to the ChoiceField metadata. 2013-11-26 17:10:16 +00:00
Ian Foote
a38d9d5b24 Add choices to options metadata for ChoiceField. 2013-11-26 09:33:47 +00:00
Malcolm Box
6af31ed394 Remove u from literals 2013-11-22 10:59:48 +00:00
Malcolm Box
263281d71d Fix issue #1231: JSONEncoder doesn't handle dict-like objects
Check for __getitem__ and then attempt to convert to a dict.
The check for __getitem__ is there as there's no universal way to
check if an object is a mapping type, but this is a likely proxy
2013-11-21 20:09:48 +00:00
Tom Christie
43c4e3aab8 Merge pull request #1229 from jgomezb/patch-2
Update urlpatterns.py
2013-11-21 01:43:07 -08:00
Krzysztof Jurewicz
9cea6880f7 Added handling of validation errors in PUT-as-create.
Fixes #1035.
2013-11-19 15:49:31 +01:00
Xavier Ordoquy
88f5921f2f Removed the DynamicSerializerView duplication 2013-11-18 20:15:35 +01:00
Xavier Ordoquy
a8b15f4290 Another fix for nested writable serializers in case of the related_name isn’t set on the ForeignKey. 2013-11-18 15:11:29 +01:00
Xavier Ordoquy
ad7aa8fe48 Fixed the nested model serializers in case of the related_name isn’t set. 2013-11-17 01:27:16 +01:00
Philip Forget
b86765d9c0 add auth param to request client calls 2013-11-15 12:25:32 -05:00
Tom Christie
7a0e2ed6f6 Version 2.3.9 2013-11-15 13:55:36 +00:00
Philip Forget
5239362951 pass oauth_timestamp to oauth_provider 2013-11-14 18:02:07 -05:00
jgomezb
6be62bc1d7 Update urlpatterns.py
Allow numbers in format extension.
2013-11-14 09:22:07 +01:00
Alex
e29942948f Undo version bump 2013-11-13 12:06:59 +00:00
Alex
f4e610248b Bump version 2013-11-12 23:46:01 +00:00
Alex
5136798a04 Merge branch 'master' into allow-aggregate-ordering 2013-11-12 23:40:24 +00:00
Alex
d1dc68d755 Add queryset aggregates to allowed fields in OrderingFilter 2013-11-12 23:40:07 +00:00
Doğan Çeçen
fd2c291c4d Typo on api-guide/fields.md and serializers.py 2013-11-11 11:54:30 +02:00
Tom Christie
470134ae9b Merge pull request #1217 from benpbenp/master
Fix object creation with reverse M2M when related_name unspecified
2013-11-08 07:15:40 -08:00
Ben Pietravalle
b7b57adee2 Fix object creation with reverse M2M when related_name unspecified
It seems that field.related_query_name() does not return the related_name
for reverse M2M relations when related_name is not explicitly set in the M2M field
definition.

So, change to use obj.get_accessor_name(), where obj is an instance of
RelatedObject, as are returned by a model's
_meta.get_all_related_many_to_many_objects(), or as in the tuples returned by
_meta.get_all_m2m_objects_with_model().
2013-11-08 13:19:40 +00:00
Xavier Ordoquy
d4a50429b0 Fixed a regression with ValidationError under Django 1.6 2013-11-08 13:12:40 +01:00
Mathieu Pillard
5829eb7a5b Drop u'' prefix for python 3.x compatibility 2013-11-06 12:51:40 +01:00
Mathieu Pillard
5325890821 Improve handling of 'empty' values for ChoiceField
The empty value defaults back to '' (for backwards-compatibility) but
is changed automatically to None for ModelSerializers if the `null`
property is set on the db field.
2013-11-05 17:21:18 +01:00
Rob Hudson
e33435d0da Fixed exception handling with YAML and XML parsers. 2013-10-31 15:03:50 -07:00
S. Andrew Sheppard
458af921f3 minor typo 2013-10-29 15:10:06 -05:00
Jakub Roztočil
be55a3c5c7 Removed commented-out credits from footer to make django-debug-toolbar work.
The comment, although valid, caused that the Django debug toolbar's injected HTML was partially commented-out and thus the toolbar didn't work as expected.
2013-10-24 17:53:02 +02:00
Chris Guethle
7a87893b96 reworked APIException, pushing some of the status_code and detail management up. Also, makes the APIException useful in isolation (defaults to status code 500) 2013-10-24 09:40:43 -05:00
Yamila Moreno
82e9ddcf7a Added get_filter_backends method 2013-10-24 16:16:01 +02:00
Tom Christie
0fc9d5fed9 Merge pull request #1198 from alexanderlukanin13/form-post-unicode
Fixed UnicodeEncodeError when POST JSON via web interface; added test
2013-10-24 05:45:55 -07:00
Tom Christie
6302307885 Update comment in get_parser_context. 2013-10-24 13:45:16 +01:00
alexanderlukanin13
6b3500b684 Fixed UnicodeEncodeError when POST JSON via web interface; added test 2013-10-24 17:52:52 +06:00
Tom Christie
f2648fefff Merge pull request #1187 from ross/paginator_def_val
paginator should validate page and provide default
2013-10-22 02:19:36 -07:00
Ross McFarland
c36122a7ba remove stray func from test 2013-10-21 14:26:21 -07:00
Ross McFarland
f0a129dcda retract the default page stuff.
better way comming in a seperate pr
2013-10-21 14:23:06 -07:00
Tom Christie
216ac8a5c1 Use lookup_url_kwarg in presave if required 2013-10-21 17:19:28 +01:00
Tom Christie
76672787cd Added . Closes #1188. 2013-10-21 09:47:07 +01:00
Ross McFarland
63e6a3b492 paginator should validate page and provide default
- use the standard paginator.validate_number method rather
  strict_postive_int.
- support optional paginator method, default_page_number, to get the default
  page number rather than hard-coding it to 1
- this allows supporting non-integer based pagination which can be an
  important performance tweak on extermely large datasets or high request
  loads
- relatively thorough unit tests of the changes
2013-10-19 21:11:27 -07:00
dpetzel
17a00be830 This fix results in models.NullBooleanField rendering as a checkbox in the browsable API 2013-10-18 21:13:20 -04:00
dpetzel
735c75abb9 add test case around ensuring proper field inference for boolean model field types 2013-10-18 21:10:49 -04:00
Tom Christie
2394f05e5a Merge pull request #1170 from craigds/write-into-foreignkey-with-source
fix writing into foreign key with non-null source
2013-10-17 07:59:29 -07:00
Tom Christie
6a40202a64 Merge pull request #1112 from tamakisquare/issue-1111
Test case and fix for issue 1111
2013-10-17 07:31:15 -07:00
Tom Christie
8c60471766 Merge pull request #1172 from brutasse/fix/return-object
Return object in save_object
2013-10-17 07:19:38 -07:00
Bruno Renié
cc3c16eaa0 Fix a docstring to reflect what the method does 2013-10-17 16:08:17 +02:00
badaud_t
b730aec0f4 Fix decimal support with YAMLRenderer 2013-10-17 01:08:24 +02:00
badaud_t
8a5fea06f0 Fix typo YAMLRendererTests 2013-10-17 01:07:50 +02:00
Omer Katz
d31fd33f4b Allow to customize description so that markup can be accepted if needed. 2013-10-16 09:15:02 -04:00
Colin Huang
c6be12f02b [Fix]: Error with partial=True and validate_<name>
The error occurs when serializer is set with partial=True and a
field-level validation is defined on a field, for which there's no
corresponding update value in .data
2013-10-15 17:05:10 -07:00
Craig de Stigter
86ea969e11 fix ticket link in test docstring 2013-10-11 15:50:07 +13:00
Craig de Stigter
7c3769f04b fix writing into foreign key with non-null source 2013-10-11 15:31:55 +13:00
Tom Christie
f18158358d Merge branch 'master' of https://github.com/tomchristie/django-rest-framework 2013-10-10 17:34:15 +01:00
Tom Christie
c3e370b168 Merge branch 'html-form-rendering' 2013-10-10 17:33:39 +01:00
Tom Christie
9e29c63895 Ensure read-only fields don't break with current HTML renderer behavior 2013-10-10 17:33:22 +01:00
Carlton Gibson
0bbc775b95 Merge pull request #1071 from craigds/field-transform-methods
Feature: add transform_<fieldname> methods to serializers
2013-10-09 01:11:46 -07:00
Henry Clifford
3e94f4dc70 support args on get_object_or_404 2013-10-04 10:49:56 -04:00
Philip Douglas
a2ae469f6b Merge remote-tracking branch 'upstream/master' 2013-10-03 11:12:55 +01:00
Craig de Stigter
dc650f77b5 add tests for transform_fieldname methods 2013-10-03 11:34:42 +13:00
Tom Christie
8d4ba478cc Fix rendering of forms and add error rendering on HTML form 2013-10-02 16:13:34 +01:00
Tom Christie
a14f1e8864 Serializers can now be rendered directly to HTML 2013-10-02 13:45:35 +01:00
Tom Christie
1fd83adb9c Merge branch 'master' of https://github.com/tomchristie/django-rest-framework 2013-09-26 16:09:31 +01:00
Tom Christie
75d6446c87 Allow .template_name attribute specified on view. Closes #1000 2013-09-26 16:09:08 +01:00
Markus Kaiserswerth
abbe9213f9 Address pending deprecation of Model._meta.module_name in Django 1.6 2013-09-23 17:48:25 +02:00
Carlton Gibson
b82c44af48 Correct typo in doc string. 2013-09-20 14:20:21 +02:00
Carlton Gibson
f07a4f4ca3 Clear cached serializer data on save() + test. Fixes #1116. 2013-09-20 14:10:46 +02:00
Colin Huang
b74c5235c5 [Add]: CustomValidationTests.test_partial_update
This test is to make sure that validate_<attrname> is not called when
partial=True and <attrname> is not found in .data.
2013-09-15 22:22:52 -07:00
Tom Christie
36bd4f22a7 Merge pull request #1107 from dpretty/master
Let JSONEncoder handle Numpy data types.
2013-09-13 11:42:15 -07:00
Tai Lee
a9dbd46c94 Refs #1109 -- Update docs. Integrate changes from feedback. 2013-09-14 00:54:44 +10:00
Tai Lee
bb3261ca48 Fixed #1105 -- Add hook for custom context in BrowsableAPIRenderer.
Replace hard coded response status check with `allow_form` context
variable, so that it can be overridden in a custom renderer class.
2013-09-13 23:11:44 +10:00
Rajiv Bose
0de1a1a0ad Typo in strings referring to Python package, django-filter.
On skip of django_filters related unit-tests the reason given states the Python package 'django-filters' is not install.

However, the Python package required to run django_filters related tests is 'django-filter'.
2013-09-13 11:55:16 +01:00
Philip Douglas
e5da0ff5e5 Merge remote-tracking branch 'upstream/master' 2013-09-13 10:47:06 +01:00
Philip Douglas
272a6abf91 Try a more localised fix to the data=None problem 2013-09-13 10:46:24 +01:00
David Pretty
d489c5c881 Let JSONEncoder handle Numpy data types.
json.JSONEncoder cannot serialize Numpy data types. Numpy arrays
and array scalars have a tolist() method which casts the object to
a standard python data type.
2013-09-13 13:36:18 +10:00
Tom Christie
cd3040737e Merge pull request #1097 from mociepka/add_default_order_by_in_filtering
Add order_by to the AutoFilterSet
2013-09-12 13:24:26 -07:00
Philip Douglas
6e4bdb5596 Add missing newline at the end of test file 2013-09-12 16:04:33 +01:00