Ian Foote
6c108c459d
Allow customising ChoiceField blank display value
2014-04-16 12:32:04 +01:00
Xavier Ordoquy
1d404874b3
Merge pull request #1527 from Ian-Foote/generic_foreign_key
...
Set GenericForeignKey fields on object before save
2014-04-16 11:27:06 +02:00
Carlton Gibson
03b4c60b2d
Merge pull request #1518 from hroncok/patch-1
...
Add more TRAILING_PUNCTUATION to work with YAML
2014-04-15 15:59:25 +02:00
Miro Hrončok
ef1d652827
Introduce tests for urlize_quoted_links() function
2014-04-15 15:33:14 +02:00
Carlton Gibson
c93ddf1750
Merge pull request #1520 from hroncok/patch-2
...
Allow unicode YAML dump
2014-04-15 15:13:51 +02:00
Miro Hrončok
617c982591
Add test for UnicodeYAMLRenderer
2014-04-15 14:12:09 +02:00
Vladislav Vlastovskiy
3fe0383572
Fixed convert bytes to str
...
Use compact function for convert
2014-04-14 13:21:24 +04:00
Vladislav Vlastovskiy
d1f4dfca20
Removed decode from test filename
2014-04-14 13:04:18 +04:00
Vladislav Vlastovskiy
d474934d36
Fixed return type
...
From bytes to str
2014-04-14 13:01:24 +04:00
Vladislav Vlastovskiy
063addabfe
Removed encode from test
...
Django does not produce such a decoding by default, this test was not honest.
2014-04-14 12:28:41 +04:00
Vladislav Vlastovskiy
4b3eb6e0b0
Fixed parse file name
2014-04-14 12:21:38 +04:00
Ian Foote
853c7a16c1
Use setattr for adding fields to a new instance
...
Add test for restoring a GenericForeignKey
2014-04-13 17:33:45 +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
Ian Foote
0a0e4f22e7
Set GenericForeignKey fields on object before save
...
* A model with a required GenericForeignKey can be saved if the field is set
2014-04-12 17:51:02 +01:00
Ian Leith
613df5c650
Fix dict_keys equality test for python 3.
2014-04-11 05:49:49 +01:00
Miro Hrončok
7ae8409370
Allow unicode YAML dump with UnicodeYAMLRenderer
...
Fixes #1519
2014-04-10 01:47:30 +02:00
Miro Hrončok
a23059b6f7
Add more TRAILING_PUNCTUATION to work with YAML.
...
Fixes #1517
2014-04-09 23:35:41 +02:00
Carlton Gibson
a73498d797
Skip new test for Django < 1.6
2014-04-09 19:54:13 +02:00
Carlton Gibson
645ef9895f
Merge branch 'refs/heads/master' into #1408
2014-04-09 15:52:26 +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
Mauro de Carvalho
2a1571b3bf
Fixed comment.
2014-04-07 18:27:59 -03:00
Dmitry Mukhin
c3891b6e00
set Retry-After header when throttled
2014-04-07 20:31:12 +04:00
Nicolas Delaby
af8a362d6b
reset stored credentials when call client.logout()
2014-04-07 14:59:27 +02:00
jacobg
6322feb32d
add a __str__ implementation to APIException
...
Add a __str__ implementation to rest_framework.exceptions.APIException. This helps for logging raised exceptions. Thanks.
2014-04-04 10:22:02 -04:00
Xavier Ordoquy
591cf8a48c
Content is a binary string.
2014-03-31 13:17:31 +02:00
Ravi Kotecha
3560796bbf
add regression tests for field Validators
...
pep8 and add issue no
fix formatting for python 2.6 and strings for python 3.2
2014-03-31 12:10:00 +01:00
Xavier Ordoquy
73cd4e236f
Merge pull request #1477 from vlastv/patch-1
...
Writable star source with instance
2014-03-31 07:49:23 +02:00
Emanuele Pucciarelli
8904f179d1
Stray unicode string marker removed
2014-03-30 12:06:03 +02:00
Emanuele Pucciarelli
d8bf878792
Metadata for related fields -- added test case.
2014-03-30 11:48:17 +02:00
Emanuele Pucciarelli
ab5082d15c
Do not check model_field's attributes if it is None
2014-03-28 19:42:46 +01:00
Emanuele Pucciarelli
04315c12af
Use help_text, verbose_name, editable attributes for related fields
2014-03-24 19:25:28 +01:00
Daniel Kontsek
3b71be725a
Fixed encoding parameter in QueryDict
2014-03-22 10:32:59 +01:00
Tom Christie
17f0871736
Merge pull request #1469 from entrouvert/master
...
authentication: allow all transport modes of access token in OAuth2Authentication
2014-03-21 12:23:49 +00:00
Vladislav Vlastovskiy
f5fc6937ec
Change serializer name for removing confusion
2014-03-20 20:27:07 +04:00
Tom Christie
58cae22970
Merge pull request #1474 from elmehdikarami/master
...
Update serializers.py
2014-03-20 16:08:10 +00:00
Vladislav Vlastovskiy
e8167f96e6
Fixed copy-paste
2014-03-20 08:53:41 +04:00
Vladislav Vlastovskiy
c3aa10e589
Moved get component from object after test source is star
2014-03-20 01:50:40 +04:00
Vladislav Vlastovskiy
19c03f4a60
Added test writable star source
...
Uses nested serializer with parent object
2014-03-20 01:49:30 +04:00
elmkarami
499d3cb8f0
Update serializers.py
2014-03-19 17:23:15 +00:00
elmkarami
03f96988ba
Update serializers.py
...
Prevent iterating over a string that is supposed to be an iterable <==> Prevent read_only_fields = ('some_string)
2014-03-19 17:11:44 +00:00
elmkarami
5c87db96c5
Update serializers.py
...
Prevent iterating over a string that is supposed to be an iterable <==> Prevent read_only_fields = ('some_string)
2014-03-19 15:41:25 +00:00
Benjamin Dauvergne
1909472aa2
authentication: allow all transport modes of access token in OAuth2Authentication
...
RFC6750 describe three transport modes for access tokens when accessing a
protected resource:
- Auhthorization header with the Bearer authentication type
- form-encoded body parameter
- URI query parameter
This patch add support for last two transport modes.
2014-03-19 12:43:45 +01:00
Xavier Ordoquy
0e677e9dd1
Reintroduced url arguments in the urls for the tests.
2014-03-07 16:11:51 +01:00
Tom Christie
3fa95132d8
Don't barf if PIL is not installed.
2014-03-07 14:16:14 +00:00
Tom Christie
35787fb3ca
Merge pull request #1460 from inglesp/issue1434
...
Add SEARCH_PARAM and ORDERING_PARAM to settings
2014-03-07 07:36:37 +00:00
Peter Inglesby
29f5ce7aeb
Use six to reload module
2014-03-06 23:51:02 +00:00
Carlton Gibson
d48e8ca8d6
Merge pull request #1459 from linovia/bugfix/optional_unique_validation
...
Unique constraint are validated even if the field is optional.
2014-03-06 22:48:16 +01:00
Peter Inglesby
2353878951
Add SEARCH_PARAM and ORDERING_PARAM to settings
...
Fixes #1434
2014-03-06 21:39:44 +00:00
Eric Buehl
34887ed756
it's safe to import scope and constants
2014-03-06 20:21:44 +00:00
Eric Buehl
86375f2d95
Merge remote-tracking branch 'upstream/master'
2014-03-06 20:21:27 +00:00
Xavier Ordoquy
51e6982397
Fixed the validation for optional fields that have a value.
2014-03-06 21:18:37 +01:00
Xavier Ordoquy
caf4d36cb3
More complex test case.
2014-03-06 21:17:41 +01:00
Xavier Ordoquy
de899824b8
Forgot to add the ref field to the field list.
2014-03-06 16:43:30 +01:00
Xavier Ordoquy
9e291879d1
Added an optional unique field to Album and checked that duplicates are detected.
2014-03-06 15:24:07 +01:00
Tom Christie
ef94861c2d
It's 2014 now, dontchaknow
2014-03-06 09:25:18 +00:00
Tom Christie
c1148241ee
Version 2.3.13
2014-03-06 09:01:05 +00:00
Eric Buehl
e0682e9298
don't implicitly import provider.oauth2
2014-03-05 17:15:52 +00:00
Rodolfo Carvalho
94fe03779b
Fix typo
2014-03-05 17:01:54 +01:00
David Larlet
84e7bf6796
Update documentation of render methods (obj to data)
2014-03-04 17:21:07 +01:00
David Larlet
07cb436d61
Typo in keywords arguments name
...
Because it matters ;)
2014-03-04 16:32:34 +01: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
dea2766aba
Added tests for "get_default_value" function
2014-03-04 13:11:54 +03:00
Xavier Ordoquy
3d7cb72e0a
Merge remote-tracking branch 'reference/master' into feature/django_1_7
2014-03-03 11:41:07 +01:00
Andreas Pelme
971578ca34
Support for running the test suite with py.test
...
* Get rid of runtests.py
* Moved test code from rest_framework/tests and rest_framework/runtests to tests
* Invoke py.test from setup.py
* Invoke py.test from Travis
* Invoke py.test from tox
* Changed setUpClass to be just plain setUp in test_permissions.py
* Updated contribution guideline to show how to invoke py.test
2014-03-02 12:40:30 +01:00
hongfeiZhang
693d9d9c63
In the method permission_denied, did not use the request parameter.
2014-03-01 11:37:31 +08:00
Tom Christie
22f225175f
Merge pull request #1437 from Keats/master
...
Display the media type of the API response on the browsable API
2014-02-28 11:55:45 +00:00
Anton Shutik
3c62f0efc3
RelatedField.get_default_value: return empty list if self.many==True
2014-02-28 13:59:21 +03:00
Tom Christie
c3c69f4304
Merge pull request #1441 from dustinfarris/null-serialization
...
TestCases and POST/PUT'ing serialized data that contains `None`
2014-02-28 09:27:27 +00:00
Val Neekman
818b4bf8b3
handle negative time value and prevent a divide by zero
2014-02-27 12:27:54 -08: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
Keats
6cd0394e20
Display the media type of the API response on the browsable API
2014-02-26 23:47:35 +00:00
Dustin Farris
505f1173d0
Demonstrate problem post/put'ing serialized data that contains 'None'
2014-02-26 12:08:26 -05:00
Tom Christie
d328f1827d
Tweak comment wrapping.
2014-02-18 12:30:55 +00:00
Ian Foote
dca8b98356
Remove unnecessary else
2014-02-18 12:28:02 +00:00
Ian Foote
f22aeeb0a3
Refactor UpdateModelMixin.update
...
Reduce nesting, return early in error cases.
2014-02-18 12:08:12 +00:00
Xavier Ordoquy
b2f0f4fcf4
Merge remote-tracking branch 'reference/master' into feature/django_1_7
2014-02-18 11:42:35 +01:00
Xavier Ordoquy
5ae94547bc
Moved the python_2_unicode_compatible into compat module.
2014-02-18 11:42:17 +01:00
tuky
5e4336845f
Update throttling.py
...
python 3 u'' gone
2014-02-14 13:47:17 +01:00
Tom Christie
a06252f812
Merge pull request #1397 from amezhenin/issue_1386
...
update regex for matching URLs, fixes issue #1386
2014-02-13 16:27:19 +00:00
Artem Mezhenin
dbd993d108
wrapper for smart_urlquote, issue #1386
2014-02-13 20:14:47 +04:00
Artem Mezhenin
08ec23268d
(I hope) tests are fixed, issue #1386
2014-02-13 19:39:53 +04:00
Artem Mezhenin
d00ea3bcac
change regex back, issue #1386
2014-02-13 18:59:05 +04:00
tuky
d18d32669a
remove spaces from META['HTTP_X_FORWARDED_FOR'] as throttle key
...
memcached cannot handle spaces in keys
2014-02-12 18:11:18 +01:00
Carlton Gibson
f1016441f5
Test and fix for #1210 . World's lowest hanging fruit.
2014-02-11 19:52:32 +01:00
Carlton Gibson
95670933d7
Test and quick fix for #1257
2014-02-11 14:44:56 +01:00
Hassan Shamim
97b7c25987
Replace 'detail' with 'default_detail' in Exceptions guide and APIException class docstring.
2014-02-10 12:54:56 -06:00
Simon Charette
4d45865bd7
Allow filter model to be a subclass of the queryset one.
2014-02-09 00:50:03 -05:00
Artem Mezhenin
35f4908e48
issue #1386
...
* regex for matching URLs was rewritten
* added unittests
2014-02-09 02:46:25 +04:00
Artem Mezhenin
41eb313e1c
update regex for matching URLs, fixes issue #1386
2014-02-09 01:01:05 +04:00
Matthew King
f8cda8adbd
Generate random token directly
2014-02-04 22:50:11 -05:00
juroe
b182b9e246
Fixes typo (Implicit instead of Implict).
2014-02-04 11:56:41 +01:00
Tom Christie
8f921160e5
Merge pull request #1377 from Ian-Foote/force_bytes
...
Import force_bytes on django >= 1.5
2014-01-31 03:45:04 -08:00
Xavier Ordoquy
5a662dd60e
Moving models back to test_serializer.
2014-01-31 11:20:53 +01:00
Ian Foote
0043f30cab
Use bytes BOUNDARY on django < 1.5
...
Django's encode_multipart was updated in django 1.5 to work internally
with unicode and convert to bytes.
In django >= 1.5 we therefore need to pass the BOUNDARY as unicode. In
django < 1.5 we still need to pass it as bytes.
2014-01-31 09:12:45 +00:00
Tom Christie
18f26ff5cc
Only add 'Vary: Accept' header when there is more than one possible renderer.
2014-01-30 17:47:55 +00:00
Tom Christie
9f0ead9597
Remove TODO note, since it hasn't been TODONE.
2014-01-30 17:32:05 +00:00
Xavier Ordoquy
73e5b7e4b2
Fixed the object representation in order to pass the tests.
2014-01-30 14:27:46 +01:00
Xavier Ordoquy
c2ee52239d
Refactoring due to the previous commit.
2014-01-30 14:27:09 +01:00
Xavier Ordoquy
1319da59ce
Make factory.get work with Django 1.7
2014-01-30 14:26:21 +01:00
Xavier Ordoquy
c6d89afdf7
Define the upload_to for file fields.
2014-01-28 23:43:09 +01:00
Xavier Ordoquy
e4c25e0ff2
wsgi_request is now added to the response so we have to remove it before pickling the response.
2014-01-28 18:57:36 +01:00
Xavier Ordoquy
656117814c
Django 1.7 has new 404 and 403 body messages.
2014-01-28 18:55:29 +01:00
Xavier Ordoquy
23a20160c4
Mock updated as Django’s get_template now has two arguments.
2014-01-28 18:54:49 +01:00
Xavier Ordoquy
da89cfc937
Don’t rely on Django’s get as it breaks for 1.7
2014-01-28 18:53:58 +01:00
Xavier Ordoquy
6aadd1639b
Moved all the reused models to the models files to avoid conflicts with the refactored apps.
2014-01-28 18:53:24 +01:00
Ian Foote
78e4468f03
Add file upload test for APIRequestFactory
...
Remove test_compat
2014-01-28 15:54:50 +00:00
Ian Foote
74fec7eeb4
Import force_bytes on django >= 1.5
2014-01-28 14:30:46 +00:00
Xavier Ordoquy
7713ddc0a8
Don’t forget to setup django for 1.7+ as it’s not a regular django command.
2014-01-28 13:20:51 +01:00
Rodolfo Henrique Carvalho
c436725dd6
Fix typo in docstring for post_delete hook.
2014-01-25 23:58:42 +01:00
Tom Christie
47f5bd488d
Merge pull request #1361 from ross/x_method_override
...
always obey X-HTTP-METHOD-OVERRIDE header
2014-01-17 08:19:06 -08:00
Ross McFarland
58d77c11c3
always obey X-HTTP-METHOD-OVERRIDE header
...
required to support old flash/flex clients that need to do everything as
GET requests (apparently to allow for any error handlings)
2014-01-17 08:14:05 -08:00
Mathieu Pillard
f034cb595a
Encode django QuerySets to lists and not dicts in JSONEncoder
2014-01-17 13:05:10 +01:00
Tom Christie
71c03b9db9
Security update to OrderingFilter
2014-01-15 14:27:41 +00:00
Tom Christie
e9fda70b4a
Nicer write_only fields implementation. Closes #1355
2014-01-15 08:53:23 +00:00
Tom Christie
8f6983ee6e
Merge branch 'master' of git://github.com/sprymak/django-rest-framework into sprymak-master
2014-01-14 20:35:26 +00:00
Tom Christie
dde3b1dfcb
Use api_settings.URL_FIELD_NAME
2014-01-14 20:35:09 +00:00
S.Prymak
ed8143b2b0
Test for customizable HyperlinkedModelSerializer url field name
2014-01-14 13:58:17 +02:00
Tom Christie
97f8ede4d1
Version 2.3.11
2014-01-14 11:26:10 +00:00
Tom Christie
85d74fc86a
Added write_only and write_only_fields. Refs #1306
2014-01-14 11:25:44 +00:00
S.Prymak
e9b0d70f5d
Override HyperlinkedModelSerializerOptions url field name with URL_FIELD_NAME setting
2014-01-14 10:38:49 +02:00
Tom Christie
bc6c5df109
Minor tweaks
2014-01-13 17:39:22 +00:00
Tom Christie
e91d0a69ab
Merge branch 'testing-nested-serializers' of git://github.com/dustinfarris/django-rest-framework into dustinfarris-testing-nested-serializers
2014-01-13 17:38:03 +00:00
Tom Christie
d937ce331c
Minor cleanup
2014-01-13 17:37:08 +00:00
Dustin Farris
c4d77667cf
Move ImportingModelSerializerTests and add comments.
2014-01-13 12:03:13 -05:00
Tom Christie
73d8a2bcbd
Merge branch 'master' of git://github.com/cguethle/django-rest-framework into cguethle-master
2014-01-13 16:52:19 +00:00
Dustin Farris
b1b58762a3
Move models.resolve_model to serializers._resolve_model
2014-01-13 11:47:44 -05:00
Tom Christie
2911cd64ad
Minor tweaks to 'lookup_value_regex' work
2014-01-13 15:37:52 +00:00
Tom Christie
4ab97843e8
Merge pull request #1333 from bodylabs/2.4.0+lookup_regex
...
Let viewsets specify their regex
2014-01-13 07:34:58 -08:00
S.Prymak
65858428fd
Make HyperlinkedModelSerializer url
field name customizable
2014-01-13 16:35:20 +02:00
Dustin Farris
2332382b51
Add a sanity check to avoid running into unresolved related models.
2014-01-12 20:28:19 -05:00
Yuri Prezument
cd9a4194ea
Check the modelfield's class instead
2014-01-12 16:32:36 +02:00
Yuri Prezument
0fd0454a5c
Test for setting allow_none=True for nullable CharFields
2014-01-12 10:53:54 +02:00
Yuri Prezument
e1bbe9d514
Set allow_none = True
for CharFields with null=True
2014-01-12 10:53:54 +02:00
Yuri Prezument
6e622d644c
CharField - add allow_null argument
2014-01-12 10:53:54 +02:00
Yuri Prezument
e88e3c6ae1
Possible fix for #1330
...
Coerce None to '' in CharField.to_native()
2014-01-12 10:53:54 +02:00
Yuri Prezument
46f5c62530
Regression test for #1330 (Coerce None to '')
2014-01-12 10:53:54 +02:00
Xavier Ordoquy
f217f6870d
Removed useless try/except
2014-01-09 23:32:50 +01:00
Xavier Ordoquy
a7072eb730
Test case for #1129
2014-01-09 23:19:25 +01:00
Dustin Farris
bf5b77ce6d
Move serializer import to top-level causes test error
2014-01-09 11:42:41 -05:00
Tom Christie
c6182b78e5
Merge pull request #1341 from fredrikmollerstrand/docstring-typo-fix
...
fix docstring typos.
2014-01-09 07:51:02 -08:00
Fredrik Möllerstrand
82a48ca55e
fix docstring typos.
2014-01-09 15:41:20 +00:00
Dustin Farris
52db4eadc2
Testing nested serializers with models that have str foreign key references.
2014-01-08 16:14:27 -05:00
Tom Christie
78494401c5
Use www.django-rest-framework.org for docs instead of django-rest-framework.org due to issues with naked domains
2014-01-08 15:22:41 +00:00
Tom Christie
e3ae33017d
Added "nofollow" against docs link.
2014-01-06 15:01:45 +00:00
Paul Melnikow
3cd15fb171
Router: Do not automatically adjust lookup_regex when trailing_slash is True
...
BREAKING CHANGE
When trailing_slash is set to True, the router no longer will adjust the lookup regex to allow it to include periods. To simulate the old behavior, the programmer should specify `lookup_regex = '[^/]+'` on the viewset.
https://github.com/tomchristie/django-rest-framework/pull/1328#issuecomment-31517099
2014-01-04 16:57:50 -05:00
Paul Melnikow
a1d7aa8f71
Allow viewset to specify lookup value regex for routing
...
This patch allows a viewset to define a pattern for its lookup field, which the router will honor. Without this patch, any characters are allowed in the lookup field, and overriding this behavior requires subclassing router and copying and pasting the implementation of get_lookup_regex.
It's possible it would be better to remove this functionality from the routers and simply expose a parameter to get_lookup_regex which allows overriding the lookup_regex. That way the viewset config logic could be in the a subclass, which could invoke the super method directly.
I'm using this now for PostgreSQL UUID fields using https://github.com/dcramer/django-uuidfield . Without this patch, that field passes the lookup string to the database driver, which raises a DataError to complain about the invalid UUID. It's possible the field ought to signal this error in a different way, which could obviate the need to specify a pattern.
2014-01-04 16:45:03 -05:00
Steven Cummings
e020c51b44
FIX BaseSerializer.from_native has an altered signature
...
* base classes define it with one parameter
* BaseSerializer currently defines a second parameter, which we make optional here for method-dispatch passivity
2014-01-02 17:18:08 -06:00
S. Andrew Sheppard
d30ce2575c
fix for genericrelation saving
2013-12-23 22:31:31 -06:00
S. Andrew Sheppard
25bd6d1d4b
can't save genericrelations via nested serializers in django 1.6
2013-12-23 22:27:40 -06:00