Omer Katz
cc13e95d5e
Fixed misspelled remark in comments.
2013-02-25 16:44:44 +03:00
Omer Katz
8d806d0cef
Fixed misspelled remark in comments.
2013-02-25 16:44:19 +03:00
Tom Christie
e1f0001f92
Fix and test for #645
...
Yuck, pickle is weird. Closes #645 .
2013-02-22 23:00:07 +00:00
Tom Christie
9f98455362
Formatting
2013-02-22 23:00:07 +00:00
Tom Christie
26ba11101b
Merge pull request #669 from yprez/datetimefield_fail
...
DateTimeField validation with non-str value
2013-02-22 14:15:57 -08:00
Tom Christie
bba918fb2a
Fix and test case for #653
...
Closes #653
2013-02-22 22:13:06 +00:00
Tom Christie
bc87bf13b4
Tests and fix for #666 .
...
Closes #666 .
2013-02-22 22:02:42 +00:00
Tom Christie
d44eb20942
Version 2.2.1
2013-02-22 20:47:41 +00:00
Tom Christie
3357a36e37
assert package requirements are met for YAMLRenderer
2013-02-22 20:46:43 +00:00
Tom Christie
0c7d6062b2
Py3/2 compat fixes for uncode view names/descriptions
2013-02-22 20:18:16 +00:00
Tom Christie
09f2bdd219
Added test for utf8 strings in docstrings of views.
2013-02-22 20:17:47 +00:00
Tom Christie
78da724964
Merge with master
2013-02-22 19:48:25 +00:00
Tom Christie
a39de47cc7
XML cleanup
2013-02-22 19:46:47 +00:00
Tom Christie
569c3a28e6
Add forbid_dtd flag, since we don't need any DTDs.
2013-02-22 19:41:09 +00:00
Tom Christie
3ad5ebaea6
Fix name fallback for BrowsableAPIRenderer
2013-02-22 13:38:20 +00:00
Tom Christie
44b59969ce
Merge pull request #672 from wronglink/unicode__doc__
...
Fixed UnicodeDecodeError on get_name and get_description methods
2013-02-22 05:37:15 -08:00
Tom Christie
dcee027fa9
defusedxml for security fix.
...
As per:
http://blog.python.org/2013/02/announcing-defusedxml-fixes-for-xml.html
2013-02-22 13:17:22 +00:00
Michael Elovskikh
aa95ccbab7
Fixed UnicodeDecodeError on get_name and get_description methods
2013-02-22 18:50:09 +06:00
Tom Christie
b261515afa
XML cleanup
2013-02-22 12:36:52 +00:00
Michael Elovskikh
7b9e134a8f
Minimal appearance fixes in addition to #663
2013-02-22 17:49:10 +06:00
Tom Christie
048ef6a039
Polishing touches to #663
2013-02-22 08:39:26 +00:00
Yuri Prezument
5f531fc1ea
Catch TypeError as well as ValueError when parsing dates, ref #699
2013-02-21 15:54:31 +02:00
Yuri Prezument
8fa82822a0
Add assertion in test
2013-02-21 15:39:14 +02:00
Yuri Prezument
1b4c078db2
Failing test case for #669
2013-02-21 12:22:09 +02:00
Tom Christie
03afaee423
Merge branch 'browsable_api_patch' of https://github.com/wronglink/django-rest-framework into generic-form-input
2013-02-20 12:18:57 +00:00
Michael Elovskikh
2fb6fa2dd3
Minimal forms appearance improvements
2013-02-20 17:15:12 +06:00
Tom Christie
160d10d348
Fix docstring
2013-02-20 08:46:00 +00:00
Michael Elovskikh
533e472352
Added tabs between object form and generic content form on POST form
2013-02-15 18:25:36 +06:00
Michael Elovskikh
3195f72784
POST form using new form.html template
2013-02-15 16:39:24 +06:00
Michael Elovskikh
d3f6536365
Added tests for PATCH form in the Browsable API
2013-02-15 15:44:11 +06:00
Tom Christie
367909e2c2
Merge pull request #657 from dgaus/master
...
Make is_simple_callable consider default arguments
2013-02-15 01:13:14 -08:00
Tom Christie
6dd867c8fe
Merge pull request #660 from pelme/timefield
...
Added a serializer TimeField
2013-02-15 01:12:03 -08:00
Tom Christie
c1a40c5899
Drop unused import.
2013-02-15 09:06:05 +00:00
Michael Elovskikh
8fdf925015
Added tabs between object form and generic content form on PUT/PATCH form
...
Some extra behaviour to `BrowsableAPIRenderer` to handle PATCH form.
Added PATCH button on generic content PUT form.
Tabs between object form and generic content form on PUT/PATCH form wich are
both allways visible now.
Fix #570
Refs #591
2013-02-15 14:41:12 +06:00
Andreas Pelme
5a5df18d18
Added a serializer TimeField
2013-02-14 21:19:51 +01:00
Tom Christie
af686ec11a
request.DATA should use empty QueryDict for no data, not None.
2013-02-14 13:02:28 +00:00
Tom Christie
9d3153ed04
Fix broken clone_request
2013-02-14 12:50:55 +00:00
Tom Christie
24ed0fa4b9
Drop accidental (uneeded) validation logic.
2013-02-14 12:26:02 +00:00
Diego Gaustein
40b13a869b
Make is_simple_callable consider fields which have default arguments
2013-02-13 20:34:23 -03:00
Tom Christie
f17bae8aac
Version 2.2.0
2013-02-13 14:05:57 +00:00
Tom Christie
72412b69f0
Set PASSWORD_HASHERS to massively speed up tests (almost x10)
2013-02-13 12:36:05 +00:00
Tom Christie
b58e763287
Fix pk relations tests which were not running.
2013-02-13 12:33:04 +00:00
Tom Christie
d7417022f3
Kick travis again.
2013-02-13 11:51:03 +00:00
Tom Christie
31f45907e5
Kick travis. Meh.
2013-02-13 11:42:57 +00: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
f341ead499
Test for None in 'dotted.source' component.
...
Closes #643 .
2013-02-12 23:01:20 +00:00
Tom Christie
15fa42b647
Unicode literal fix
2013-02-12 23:00:43 +00:00
Tom Christie
f505b2e440
Clean up field_to_native logic
2013-02-12 22:59:01 +00:00
Tom Christie
724906c516
Test for #637 .
2013-02-12 22:58:38 +00:00
Tom Christie
7f797abc19
Remove deprecated APIs from tests
2013-02-12 20:07:35 +00:00
Tom Christie
41ac1e8f32
Raise warnings if 'request' not in context for hyperlinked fields.
2013-02-12 13:54:50 +00:00
Tom Christie
388e617366
Raise warnings on implicit many serialization
2013-02-12 13:53:45 +00:00
Tom Christie
23fbbb1e16
Drop six
module from coverage.
2013-02-12 08:58:29 +00:00
Tom Christie
f5a0275547
Tidy up internal view permission checking logic.
...
Also document correctly - these methods are now public and will fall
under the deprecation policy from now on.
2013-02-12 08:58:28 +00:00
Tom Christie
09b01887f2
New style object-level permission checks
2013-02-12 08:58:28 +00:00
Tom Christie
aa03425c09
Merge pull request #651 from fernandogrd/master
...
DictWithMetadata.__getstate__ was never called (Fix for 645)
2013-02-11 23:27:35 -08:00
Fernando Rocha
ea004b5e7a
Make use o issubclass instead of isinstance (fix issue #645 )
...
Because __mro__ is a list of classes and not instances.
DictWithMetadata.__getstate__ was never called
Signed-off-by: Fernando Rocha <fernandogrd@gmail.com>
2013-02-11 19:18:22 -03:00
Tom Christie
baacdd821f
Add object permissions tests.
2013-02-10 20:08:46 +00:00
Tom Christie
870f10486c
Fix incorrect 401 vs 403 response, if lazy authentication has not taken place.
2013-02-10 20:08:36 +00:00
Tom Christie
29136ef2c6
Enforce PUT-as-create permissions
2013-02-10 16:50:46 +00:00
Tom Christie
69dcf13da9
Bugfix for DjangoModelPermissions. Fixes #437
...
Turns out that Django's default permissions backend always returns
False when checking object-level permissions, even if the user does
have valid global permissions.
2013-02-10 16:43:52 +00:00
Tom Christie
4c8bd40465
Tests for DjangoModelPermissions.
2013-02-10 16:42:24 +00:00
Tom Christie
670ac25b25
Allow serializers to handle dicts as well as objects. Fixes #447 .
2013-02-07 12:57:40 +00:00
Tom Christie
8113d66126
Use new style of required=<bool>
not blank
or null
2013-02-07 09:24:34 +00:00
Tom Christie
5813a09512
Use new many=True relations style.
2013-02-07 09:14:58 +00:00
Tom Christie
c18fb0d695
Added a post_save
hook. Closes #558 .
2013-02-06 21:28:03 +00:00
Tom Christie
123c6cbc7c
Merge pull request #640 from mjtamlyn/remove-naked-excepts
...
Purge naked excepts.
2013-02-06 05:21:01 -08: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
55fd646631
Set many explicitly from mixins. Refs #564 .
2013-02-06 13:04:11 +00:00
Tom Christie
4788c87b76
Fix mismatch between template blocks and docs.
...
Fixes #639 .
2013-02-06 12:35:05 +00:00
Tom Christie
efb798cebc
Don't deprecate 'exclude'
...
Need to track outcome of Django's #19733 , and decide on approach
accordingly.
2013-02-06 08:48:41 +00:00
Tom Christie
7dc4bce4e2
Fix 2.6 compat
2013-02-04 21:35:47 +00:00
Tom Christie
937ef00808
Merge branch 'master' into 2.2
2013-02-04 21:19:11 +00:00
Tom Christie
221e77d357
Fix incorrect test name. Fixes #635
2013-02-04 21:18:54 +00:00
Tom Christie
0a38bc9db8
Deal with parser encodings properly
2013-02-04 21:16:34 +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
97f2b99495
Don't use deprecated xml style
2013-02-04 19:51:50 +00:00
Tom Christie
2c634c0e5c
Use request.QUERY_PARAMS internally
...
(instead of request.GET)
2013-02-04 19:51:31 +00:00
Tom Christie
00752dcd2a
Py3k cleanup
2013-02-01 15:07:51 +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
d9b73e15c8
Serializers take many=<bool>
argument.
2013-01-31 17:06:23 +00:00
Tom Christie
f1e665673f
Tidying
2013-01-30 20:38:11 +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
9a4d01d687
Formatting fixes
2013-01-30 12:41:26 +00:00
Tom Christie
4601487248
Use many=True style for pk relations.
2013-01-30 12:41:18 +00:00
Fernando Rocha
41364b3be0
Added regretion test for issue #632
...
Signed-off-by: Fernando Rocha <fernandogrd@gmail.com>
2013-01-30 09:22:36 -03:00
Fernando Rocha
fceacd830f
Fix processing of ManyToManyField when it is empty
...
Signed-off-by: Fernando Rocha <fernandogrd@gmail.com>
2013-01-29 18:46:05 -03:00
Andrea de Marco
85e6360792
Update rest_framework/serializers.py
2013-01-28 22:08:40 +01:00
Tom Christie
a3a06d11cc
Ensure model field validation is performed for ModelSerializers with a custom restore_object method. Fixes #623 .
2013-01-28 12:56:42 +00:00
Michael Elovskikh
cb5cc70cba
Login page styles fix. Closes #618 . Made with 🍪
2013-01-28 18:01:44 +06:00
Tom Christie
b5d8f50f9d
Merge branch 'master' into many-fields
2013-01-26 21:37:43 +00:00
Tom Christie
a75db4cfb8
Version 2.1.17
2013-01-26 20:59:15 +00:00
Tom Christie
4d43e9f7de
Test for custom pagination serializers. Also refs #604 .
2013-01-26 20:55:09 +00:00
Tom Christie
a51bca32fd
Fix issues with custom pagination serializers
2013-01-26 20:54:41 +00:00
Tom Christie
b41f258ee5
Serializers should accept source='*' argument. Fixes #604 .
...
(Test also incoming)
2013-01-26 20:54:03 +00:00
Tom Christie
b783887c33
Test for GFK, using RelatedField. Refs #607 .
2013-01-25 14:36:27 +00:00
Tom Christie
b73d7e9bb4
Cleaning up GFK test module. Refs #607 .
2013-01-25 13:58:19 +00:00
Tom Christie
d6628d4e78
Test for #552 .
2013-01-24 08:58:19 +00:00
Tom Christie
4a4fe60e33
Merge pull request #603 from minddust/validation_error
...
Add failed testcase for fieldvalidation + fix
2013-01-23 01:21:26 -08:00
Tom Christie
b7abf14d3a
Pass PaginationSerializer context through to child ModelSerializer on init. Fixes #595 . Fixes #552 .
2013-01-23 07:38:13 +00:00
Stephan Groß
69e62457ef
Improve validate_<fieldname> fix
2013-01-23 07:53:54 +01:00
Stephan Groß
f0071dbccd
Add separate test for failed custom validation
2013-01-23 07:52:56 +01:00
Tom Christie
b7ab2aee46
Merge branch 'master' into unauthenticated_response
...
Conflicts:
docs/api-guide/authentication.md
2013-01-22 09:11:38 +00:00
Tom Christie
65b62d64ec
WWW-Authenticate responses
2013-01-21 21:29:49 +00:00
Tom Christie
778b0dddef
Merge pull request #602 from kevinastone/master
...
TestCase for `format_suffix_patterns`
2013-01-21 09:51:33 -08:00
Tom Christie
98bffa68e6
Don't do an inverted if test.
2013-01-21 17:42:39 +00:00
Kevin Stone
e7916ae0b1
Tweaked some method names to be more clear and added a docstring to the test case class.
...
Signed-off-by: Kevin Stone <kevinastone@gmail.com>
2013-01-21 09:37:50 -08:00
Stephan Groß
2250ab6418
Add possible solution for field validation error
2013-01-21 12:50:39 +01:00
Stephan Groß
dc1c57d595
Add failed testcase for fieldvalidation
2013-01-21 12:45:30 +01:00
Kevin Stone
71bd2faa79
Added test case for format_suffix_patterns to validate changes introduced with issue #593 .
...
Signed-off-by: Kevin Stone <kevinastone@gmail.com>
2013-01-20 13:03:38 -08:00
Tom Christie
771821af7d
Include kwargs in included URLs
2013-01-19 18:39:39 +00:00
Tom Christie
69083c3668
Drop print statement
2013-01-19 18:36:25 +00:00
Tom Christie
2c05faa52a
format_suffix_patterns
now support include
-style nested URL patterns. Fixes #593
2013-01-19 16:56:48 +00:00
Tom Christie
37d49429ca
Raise assertion errors if @api_view decorator is applied incorrectly. Fixes #596 .
2013-01-19 15:51:14 +00:00
Tom Christie
a98049c5de
Drop unneeded test
2013-01-19 15:25:32 +00:00
Tom Christie
4eb5861f36
Starting migration from ManyField to Field(many=True)
2013-01-18 23:36:35 +00:00
Tom Christie
211bb89eec
Raise Validation Errors when relationships receive incorrect types. Fixes #590 .
2013-01-18 21:29:21 +00:00
Tom Christie
6385ac519d
Revert accidental merge.
2013-01-18 19:47:57 +00:00
Mark Aaron Shirley
221f7326c7
Use None to delete nested object as opposed to _delete flag
2013-01-16 16:04:20 -08:00
Mark Aaron Shirley
34e14b01e4
Move nested serializer logic into .field_from_native()
2013-01-16 16:04:20 -08:00
Mark Aaron Shirley
2d62bcd5aa
Add one-to-one nested update and delete functionality
2013-01-16 16:04:20 -08:00
Mark Aaron Shirley
8e5003a1f6
Update errant test comment
2013-01-16 16:04:20 -08:00
Mark Aaron Shirley
46eea97380
Update one-to-one test names
2013-01-16 16:04:19 -08:00
Mark Aaron Shirley
e66eeb4af8
Remove commented out debug code
2013-01-16 16:04:19 -08:00
Mark Aaron Shirley
72c04d570d
Add nested create for 1to1 reverse relationships
2013-01-16 16:04:19 -08:00
Tom Christie
eb3d4d0e93
Drop bits of relations_slug tests which don't mirror existing tests.
2013-01-16 14:32:51 +00:00
Tom Christie
875841c76a
Merge branch 'master' of https://github.com/steve-gregory/django-rest-framework into slug-field-fixes
2013-01-16 13:24:09 +00:00
Steven Gregory
87029122c2
Added a new file 'relations_slug.py' that tests Nullable Foreign Keys and the SlugRelatedField
2013-01-15 13:49:48 -07:00
Tom Christie
685706ff2b
Merge pull request #584 from radiosilence/master
...
Adding timedelta support to JSONEncoder, and an example of how to add decode support to a serializer.
2013-01-15 05:25:24 -08:00
James Cleveland
4fc3b1ba56
Add timedelta encoder to the JSONEncoder class.
...
Whilst this commit adds *encoding* of timedeltas to a string of a floating
point value of the seconds, you must add your own serializer field for
whatever timedelta model field you are using. This is because Django doesn't
support any kind of timedelta field out-of-the-box, so you have to either
implement your own or use django-timedelta.
If this is the case and you want to serialise timedelta input, you will have
to implement your own special field to use for the timedelta, which is not
included in core as it is based on a 3rd party library. Here is an example:
import datetime
import timedelta
from django import forms
from django.core import validators
from django.core.exceptions import ValidationError
from django.utils.translation import ugettext_lazy as _
from rest_framework.fields import WritableField
class TimedeltaField(WritableField):
type_name = 'TimedeltaField'
form_field_class = forms.FloatField
default_error_messages = {
'invalid': _("'%s' value must be in seconds."),
}
def from_native(self, value):
if value in validators.EMPTY_VALUES:
return None
try:
return datetime.timedelta(seconds=float(value))
except (TypeError, ValueError):
msg = self.error_messages['invalid'] % value
raise ValidationError(msg)
Which is based on the FloatField. This field can then be used in
your serializer like this:
from yourapp.fields import TimedeltaField
class YourSerializer(serializers.ModelSerializer):
duration = TimedeltaField()
2013-01-15 13:08:52 +00:00
Johannes Spielmann
e67b23f1ac
correcting template: closing tag was missing
2013-01-15 13:46:41 +01:00
Tom Christie
da6b9576c5
Update docstrings
2013-01-15 10:51:10 +00:00
Tom Christie
191135d7b0
Version 2.1.16
2013-01-14 09:20:44 +00:00
Tom Christie
d9acec3e6d
PK fields should only be read-only if they are an AutoField. Fixes #563
2013-01-12 09:43:14 +00:00
Tom Christie
73c4e5c460
auto_now and auto_now_add fields should be read only by default
2013-01-12 09:43:14 +00:00
Juan Riaza
268f60999c
unused imports
2013-01-10 15:48:22 +01:00
Mark Aaron Shirley
81691ff900
Merge remote-tracking branch 'upstream/master' into null-one-to-one
2013-01-08 08:33:01 -08:00
Tom Christie
431ced66e4
Merge pull request #566 from mjtamlyn/patch-1
...
ObtainAuthToken pluggable Serializer.
2013-01-08 07:38:18 -08:00
Tom Christie
37a8458687
Merge branch 'master' of https://github.com/tomchristie/django-rest-framework
2013-01-08 15:05:34 +00:00
Tom Christie
c1f194b0a5
Fix inconsistent view_name logic. Fixes #567 .
2013-01-08 15:03:14 +00:00
Marc Tamlyn
49cd5e59a8
ObtainAuthToken pluggable Serializer.
...
It should have serializer_class in the same way as any other API view.
2013-01-08 12:20:01 +00:00
Mark Aaron Shirley
a897eb5480
Create separate *NullableOneToOneTests TestCase
2013-01-07 16:27:31 -08:00
Xavier Ordoquy
510d6a3c55
Introduced HTTP_HEADER_ENCODING.
2013-01-07 23:26:14 +01:00
Tom Christie
4e8f55887d
Clean up test slightly. Refs #552
2013-01-07 21:37:44 +00:00