Tom Christie
f1a2eeb818
.choices property of RelatedField should preserve non-string values. ( #4379 )
...
Update RelatedField.choices to support non-string values
2016-08-10 16:38:59 +01:00
Tom Christie
2d43b17f9a
Limit queryset when rendering relational choices. ( #4375 )
...
Limit querysets to html_cutoff when rendering relational choices
2016-08-10 13:01:10 +01:00
Tom Christie
75751cc64e
Allow relative style hyperlinked URLs
2016-06-02 15:03:17 +01:00
Stephan Groß
a101251a2a
Fix blank lines around docstrings
2016-03-17 11:06:47 +00:00
Jared Lang
7ac8cc760c
Fix empty pk detection in HyperlinkRelatedField.get_url
...
This implementation allows detection of empty values that are non-nullable, allowing the field to return None values for such cases
2016-02-29 12:56:56 -08: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
Luis San Pablo
44a3d41ce9
Implement __getnewargs__ for #3628
2015-12-03 21:12:03 +00:00
Ryan Hiebert
a19f152065
Note possibility of overriding get_queryset
2015-11-18 10:26:00 -06:00
Ryan Hiebert
389b48e394
Avoid making a new module for this function
2015-11-18 08:19:27 -06:00
Ryan Hiebert
dca2de3a5c
Make the override check a utility function
2015-11-16 12:21:58 -06:00
Ryan Hiebert
fe12816b82
Move default validation back into init method
2015-11-13 15:16:27 -06: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
JocelynDelalande
3b25207099
typo
2015-10-29 16:20:44 +01:00
Carlton Gibson
45ace5010e
Remove OrderedDict fallback
2015-09-22 16:35:38 +02:00
Tom Christie
f4412d0827
Docs for select cutoffs
2015-08-21 10:52:44 +01:00
James Beith
5c0a2b79b3
Remove converting a string in to a string
...
The `display_value` method returns a text type.
2015-08-10 15:33:04 +01:00
James Beith
2f6e5d0509
Add display value method
...
Returns the text representation of the instance. Subclasses can override this method to provide a different display value used for populating the `choices` property.
2015-08-10 11:03:57 +01:00
Tom Christie
0cbfbc27d8
Tweak erronous assignment
2015-08-07 15:41:46 +01:00
Tom Christie
e63dcab8b3
Fix for rendering select templates on relationships
2015-08-07 14:36:00 +01:00
Tom Christie
472784b70a
Docs for custom hyperlinked fields.
2015-08-03 09:27:03 +01:00
Tom Christie
e68d737825
Respect blank on many to many, and set allow_empty=False if it is not present. Closes #2804 .
2015-07-30 17:03:08 +01:00
Tom Christie
1f55bc747b
Merge pull request #2926 from tomchristie/admin-style
...
Admin style renderer
2015-07-30 15:01:37 +01:00
Ion Scerbatiuc
d4353cc1fd
Moved the code comment inside the if block and removed whitespace
2015-07-27 07:57:05 -07:00
Ion Scerbatiuc
0386a01673
Addressed CR comments
2015-07-27 07:45:35 -07:00
Ion Scerbatiuc
47a22a55ca
Added a possible fix
2015-07-25 09:44:00 -07:00
Tom Christie
b996266431
Merge master
2015-07-23 15:28:29 +01:00
Tom Christie
264d423493
Added allow_empty flag for ListField, ListSerializer, ManyRelation, MultipleChoiceField.
2015-07-16 13:51:15 +01:00
Tom Christie
c14ad7add7
Handle .choices for related fields when queryset argument is actually a mamanger instance. Closes #3145 .
2015-07-14 13:31:24 +01:00
Tom Christie
bca2ea35df
Ensure that realtionship fields '.choices' returns an empty dict when accessed with a read-only field. Closes #2910 .
2015-07-14 13:21:08 +01:00
Tom Christie
055986b5b0
More helpful exception when URL cannot reverse and field value was empty. Closes #2698 .
2015-07-02 11:36:14 +01:00
Venelin Stoykov
c3c9a712fa
Fix ManyRelatedField.choices
...
Use choices from self.child_relation.
We don't need to repeat ourself because can get out of sync.
2015-06-29 15:35:55 +03:00
José Padilla
7351a3f6ca
Sort imports with isort
2015-06-25 16:55:51 -04:00
José Padilla
83c9136c90
Cleanup import following PEP 8 style guide
2015-06-25 16:10:17 -04:00
Tom Christie
47765bc429
Merge pull request #3034 from m-vellinga/master
...
Use get_queryset() for RelatedField choices property
2015-06-25 16:41:43 +01: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
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
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
Tom Christie
b1b47036d7
Use six.text_type for hyperlink names
2015-06-03 11:53:27 +01:00
Tom Christie
90f2e26679
Add Hyperlink and rendering in admin style renderer
2015-06-03 11:00:38 +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
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