Devon Bleibtrey
b1c1867b16
Swapping to hassattr logic for pk attribute references in relations
2015-03-23 11:40:33 -04:00
Devon Bleibtrey
7ac3c3fff7
Added enhancement for pk reference in many=True relations
2015-03-23 10:42:42 -04:00
Devon Bleibtrey
8a58b1a380
Added ability to define backend identification attribute
2015-03-22 13:50:05 -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
e1c4513312
Fix NamespaceVersioning with hyperlinked serializer fields
2015-02-05 00:58:09 +00:00
Brandon Cazander
77d061d234
Provide rest_framework.resolve. Fixes #2489
2015-02-02 20:37:33 -08:00
Tom Christie
4ee4b4f2dc
Merge master
2015-01-30 14:00:25 +00: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
Tom Christie
6065cdbd93
Merge master
2015-01-19 15:16:57 +00:00
Tom Christie
4ce4132e08
Preserve ordering on relationship drop-down choices. Closes #2408 .
2015-01-14 12:56:03 +00: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
Craig Blaszczyk
4c32083b8b
use double quotes for user visible strings; end user visible strings in full stops; add some missing translation tags
2015-01-07 12:01:11 +00:00
Tom Christie
426547c61c
str() -> six.text_type(). Closes #2290 .
2014-12-17 13:39:35 +00:00
Tom Christie
1e336ef30d
Move comment
2014-12-10 22:10:45 +00:00
Tom Christie
9d3810f313
Drop get_iterable()
2014-12-10 22:09:24 +00:00
Tom Christie
ca7b1f6d51
Optimizations play nicely with select_related, prefetch_related
2014-12-10 21:09:45 +00:00
Tom Christie
720a37d3de
Hyperlinked PK optimization. Closes #1872 .
2014-12-09 17:28:56 +00:00
Tom Christie
4034793383
Added missing translation markers in realtions.py. Closes #2231 .
2014-12-08 15:13:59 +00:00
Tymur Maryokhin
d9930181ee
Removed unused imports, pep8 fixes, typo fixes
2014-12-05 00:29:28 +01:00
Tymur Maryokhin
95af92ca01
Removed custom urlparse compat
2014-12-04 15:47:42 +01:00
Tymur Maryokhin
d54c67d79d
Removed custom StringIO, force_text, smart_text compat
2014-12-04 03:11:42 +01:00
Tom Christie
786cab705a
Tweak to 3.0 relationship docs
2014-11-26 11:38:48 +00:00
Tom Christie
b4550c65dd
Docstring for 'many_init'
2014-11-26 11:30:28 +00:00
Tom Christie
992330055e
Refactor many
2014-11-13 21:11:13 +00:00
Tom Christie
fd97d9bff8
Use select inputs for relationships. Closes #2058 .
2014-11-13 19:35:03 +00:00
Tom Christie
51d86a6505
Support dotted source on relational fields
2014-11-07 16:05:07 +00:00
Tom Christie
49fae23000
Pass through kwargs to both Serializer and ListSerializer
2014-11-05 15:23:13 +00:00
Tom Christie
3af5df1955
Performance for PK fields
2014-10-16 20:47:57 +01:00
Tom Christie
5d247a65c8
First pass on nested serializers in HTML
2014-10-09 15:11:19 +01:00
Tom Christie
f7d43f530a
Limit blank string -> None to just be on relational fields
2014-10-08 17:03:14 +01:00
Tom Christie
4c015df28c
Tweaks
2014-10-08 16:43:33 +01:00
Tom Christie
6b09e5f2bb
Tests for generic relationships
2014-10-08 11:22:10 +01:00
Tom Christie
01c0857f8b
Merge branch 'version-3.0' of https://github.com/tomchristie/django-rest-framework into version-3.0
2014-10-03 13:12:43 +01:00
Tom Christie
765b0b33bf
Revert accidental stupidity
2014-10-03 13:12:23 +01:00
Tom Christie
dd47d8aa45
Merge pull request #1921 from koordinates/fix-typos
...
Minor: fix spelling and grammar, mostly in 3.0 announcement
2014-10-03 09:24:26 +01:00
Craig de Stigter
857a8486b1
More spelling tweaks
2014-10-03 09:00:33 +13:00
Craig de Stigter
dfab9af294
Minor: fix spelling and grammar, mostly in 3.0 announcement
2014-10-03 08:41:18 +13:00
Tom Christie
fec7c4b458
Browsable API tweaks
2014-10-02 18:13:15 +01:00
Tom Christie
df7b6fcf58
First pass on incorperating the form rendering into the browsable API
2014-10-02 16:24:24 +01:00
Tom Christie
ffc6aa3abc
More forms support
2014-10-01 21:35:27 +01:00
Tom Christie
381771731f
Use six.text_type instead of str everywhere
2014-10-01 13:09:14 +01:00
Tom Christie
64632da371
Clean up bind - no longer needs to be called multiple times in nested fields
2014-09-25 11:40:32 +01:00
Tom Christie
106362b437
ModelSerializer.create() to handle many to many by default
2014-09-18 14:58:08 +01:00
Tom Christie
9fdb2280d1
First pass on ManyRelation
2014-09-18 14:23:00 +01:00
Tom Christie
5b7e4af0d6
get_base_field() refactor
2014-09-18 11:20:56 +01:00
Tom Christie
0ac52e0808
Use Resolver404 instead of base Exception
2014-09-12 17:06:37 +01:00
Tom Christie
b73a205cc0
Tests for relational fields (not including many=True)
2014-09-12 17:03:42 +01:00
Tom Christie
250755def7
Clean up relational fields queryset usage
2014-09-12 10:59:51 +01:00
Tom Christie
0d354e8f92
to_internal_value() and to_representation()
2014-09-12 09:49:35 +01:00
Tom Christie
c1036c1753
More test passing
2014-09-03 16:34:09 +01:00
Tom Christie
f2852811f9
Getting tests passing
2014-09-02 17:41:23 +01:00
Tom Christie
ec096a1cac
Add relations and get tests running
2014-09-02 15:07:56 +01:00
Tom Christie
4ac4676a40
First pass
2014-08-29 16:46:26 +01:00
Tom Christie
e5e6329a22
Remove pk_url_field
, slug_url_field
, slug_field
.
...
Closes #1773 .
2014-08-29 11:29:26 +01:00
Tom Christie
d2795dd26d
Resolve linting issues
2014-08-19 13:54:52 +01:00
Xavier Ordoquy
d08536ad9d
Merge remote-tracking branch 'origin/master' into 2.4.0
...
Conflicts:
.travis.yml
docs/api-guide/fields.md
docs/api-guide/routers.md
docs/topics/release-notes.md
rest_framework/authentication.py
rest_framework/serializers.py
rest_framework/templatetags/rest_framework.py
rest_framework/tests/test_authentication.py
rest_framework/tests/test_filters.py
rest_framework/tests/test_hyperlinkedserializers.py
rest_framework/tests/test_serializer.py
rest_framework/tests/test_testing.py
rest_framework/utils/encoders.py
tox.ini
2014-04-13 00:05:57 +02:00
Carlton Gibson
c1ac65edce
Adds test that blank option is added when required=False on RelatedFields
2014-04-09 15:51:00 +02:00
Tom Christie
4edd39b2e4
Merge pull request #1442 from Anton-Shutik/master
...
RelatedField default value handling fixed
2014-03-04 15:26:34 +00:00
Anton Shutik
3c62f0efc3
RelatedField.get_default_value: return empty list if self.many==True
2014-02-28 13:59:21 +03:00
Dustin Farris
f126856f65
Allow 'None' to pass as a null value in RelatedFields
2014-02-27 12:30:59 -05:00
Anton Shutik
1addd09e2b
RelatedField default value handling fixed
2014-02-27 18:34:36 +03:00
Xavier Ordoquy
f217f6870d
Removed useless try/except
2014-01-09 23:32:50 +01:00
Tom Christie
21cd638659
Merge master
2013-09-25 09:44:26 +01:00
Yuri Prezument
745ebeca77
Handle case where obj=None in PKRelatedField.field_to_native()
...
Fixes #1072
2013-08-31 17:20:49 +03:00
Tom Christie
9a5b2eefa9
Merge master
2013-08-30 09:28:33 +01:00
Tom Christie
10d386ec6a
Cleanup and dealing with empty form data.
2013-08-23 16:10:20 +01:00
Tom Christie
e03854ba6a
Tweaks to display nested data in empty serializers
2013-08-23 14:06:14 +01:00
Tom Christie
379ad8a824
pending deprecations -> deprecated
2013-06-27 20:36:14 +01:00
Tom Christie
3fcc01273c
Remove deprecated code
2013-06-27 20:29:52 +01:00
Tom Christie
c160e49321
Test cases and fix for plain-list relationships (ie not queryset) Closes #878 .
2013-06-04 14:05:35 +01:00
Tom Christie
8b73dce51d
view_name argument to HyperlinkedModelSerializer is now properly enforced. Closes #471
2013-06-02 19:50:24 +01:00
Tom Christie
d7753123f6
HyperlinkedModelSerializer lookup_field option should apply to HyperlinkedIdentityField
2013-05-31 11:50:37 +01:00
Tom Christie
c98ac3e83e
Added get_url hook to HyperlinkedIdentityField in line with HyperlinedRelatedField. Closes #883
2013-05-29 14:09:31 +01:00
Tom Christie
22e1950e1c
Backwards compatible approach to HyperlinkedIdentityField URLs. Closes #892
2013-05-28 12:08:36 +01:00
Tom Christie
e32a6e4211
Merge pull request #860 from andymckay/master
...
startswith can take a tuple
2013-05-18 07:17:13 -07:00
Andy McKay
aeba5bed05
startswith can take a tuple
2013-05-18 07:09:24 -07:00
Pablo Recio
392c8556ae
Display an empty label into related fields if it isn't required
2013-05-18 15:01:58 +02:00
Craig de Stigter
c56d5f8f63
Merge remote-tracking branch 'upstream/master'
2013-05-18 10:23:26 +02:00
Andy Freeland
abe207b869
HyperlinkedIdentityField uses lookup_field
kwarg.
...
According to the [Serializers API Guide][1], `HyperlinkedIdentityField`
takes `lookup_field` as a kwarg like the other related fields and the
generic views. However, this was not actually implemented.
[1]: http://django-rest-framework.org/api-guide/serializers.html#hyperlinkedmodelserializer
2013-05-16 11:48:35 -04:00
Tom Christie
538d2e35e7
lookup_field on hyperlink serializers
2013-05-05 16:47:45 +01:00
Tom Christie
e4067bfb75
introduce lookup_field and add pendingdeprecationwarnings
2013-05-02 12:07:18 +01:00
Tom Christie
35f99cddc4
lookup_field on hyperlinked fields, and overriddable hyperlinked fields. Closes #688
2013-05-01 09:03:09 +01:00
Tom Christie
dc7b1d6430
2.2's PendingDeprecationWarnings now become DeprecationWarnings. 2.3's PendingDeprecationWarnings added.
2013-04-29 12:45:00 +01:00
Tom Christie
95abe6e844
Cleanup docstrings
2013-04-25 12:47:34 +01:00
Bouke Haarsma
126a0f739d
Fixed #720
2013-03-10 21:02:34 +01:00
Craig de Stigter
84be169353
fix function names and dotted lookups for use in PrimaryKeyRelatedField.field_to_native (they work in RelatedField.field_to_native already)
2013-03-01 16:13:04 +13:00
Tom Christie
018298deb8
Relational fields use same field_to_native logic as regular fields.
...
Fixes #637 . Closes #638 .
2013-02-12 23:03:04 +00:00
Tom Christie
41ac1e8f32
Raise warnings if 'request' not in context for hyperlinked fields.
2013-02-12 13:54:50 +00:00
Marc Tamlyn
11610e7c3c
Try the correct NoReverseMatch location.
2013-02-06 13:10:54 +00:00
Marc Tamlyn
bd7977eed7
Purge naked excepts.
...
Most of these had obvious exceptions which would be thrown. Some I'm not
sure about but they should at least catch only Exception so as not to
ignore SystemExit and other inappropriate Error classes.
2013-02-06 13:05:17 +00:00
Tom Christie
b052c92ac3
Cleanup imports
...
Mostly adding `from __future__ import unicode_literals` everywhere.
2013-02-04 20:55:35 +00:00
Tom Christie
b82227e517
remove broken import
2013-02-04 20:38:18 +00:00
Tom Christie
8e846bdf52
Merge branch 'py3k' into 2.2
...
Conflicts:
rest_framework/relations.py
rest_framework/serializers.py
rest_framework/tests/relations_hyperlink.py
rest_framework/tests/relations_slug.py
2013-02-04 20:37:09 +00:00
Tom Christie
f4f237e3ee
3.2, 3.3 compat
2013-02-01 14:03:28 +00:00
Tom Christie
d9c7b1c585
Merge branch 'p3k' of https://github.com/linovia/django-rest-framework into working
...
Conflicts:
rest_framework/authentication.py
rest_framework/relations.py
rest_framework/serializers.py
rest_framework/settings.py
rest_framework/tests/authentication.py
rest_framework/tests/genericrelations.py
rest_framework/tests/generics.py
rest_framework/tests/relations_hyperlink.py
rest_framework/tests/relations_nested.py
rest_framework/tests/relations_pk.py
rest_framework/tests/serializer.py
2013-02-01 11:58:55 +00:00
Tom Christie
e4ac566625
Add dprecation warnings
2013-01-30 20:33:50 +00:00
Tom Christie
e24d29ec05
Tweak empty list implementation
2013-01-30 14:21:18 +00:00
Tom Christie
be6df3ae3c
Merge branch 'master' into many-fields
...
Conflicts:
rest_framework/relations.py
2013-01-30 13:41:56 +00:00
Tom Christie
4601487248
Use many=True style for pk relations.
2013-01-30 12:41:18 +00:00