Tom Christie
38a1b3ec6b
Rationalize decimal logic. Closes #3222 .
2015-08-06 09:51:00 +01:00
Tom Christie
bf35906dc0
FilePathField subclassing from ChoiceField
2015-08-03 10:17:41 +01:00
Tom Christie
877e964d7e
Don't need to support Django 1.4 with FilePathField.
2015-08-03 10:15:28 +01:00
Aider Ibragimov
205f388631
fix import sort order
2015-07-19 01:32:51 +03:00
Aider Ibragimov
c4f1c98572
fix lint issues
2015-07-19 01:22:57 +03:00
Aider Ibragimov
a1397ac699
fix bugs, move version branching to compat, update ModelSerializer mapping
2015-07-19 00:26:03 +03:00
Aider Ibragimov
d845157983
Merge branch 'master' of https://github.com/tomchristie/django-rest-framework into feature/filepathfield
2015-07-18 23:34:07 +03:00
Tom Christie
0ccb148183
Support QueryDict list arguments with ListField. Closes #3155 .
2015-07-16 15:59:15 +01:00
Tom Christie
264d423493
Added allow_empty flag for ListField, ListSerializer, ManyRelation, MultipleChoiceField.
2015-07-16 13:51:15 +01:00
Tom Christie
d231f36588
Support default values being used for empty HTML fields. Closes #3130 .
2015-07-16 11:47:40 +01:00
Max Peterson
ee2afb83e2
Fix 1.4 tests and make flatten_choice a utility.
2015-07-03 13:56:49 +01:00
Max Peterson
56b3f19605
Add support for grouped choices.
...
This also adds support for mixing single and paired choices:
```
[
('poor', 'Poor quality'),
'medium',
('good', 'Good quality'),
]
```
2015-07-03 12:27:01 +01:00
Tom Christie
c4f908d4ee
Introduce datetime_parser as class level attribute on all date/time fields. Refs #3093 .
2015-07-02 11:23:52 +01:00
Tom Christie
6ce9e3baf0
Remove datetime_parser argument from DateTimeField
2015-07-02 11:22:18 +01:00
Tom Christie
6d79ea2cde
Merge pull request #3093 from sorreltree/master
...
Ability to customize DateTimeField with a custom datetime_parser
2015-07-02 11:21:25 +01:00
Tom Christie
d979dc6522
Tweak exception message
2015-07-02 10:16:43 +01:00
Tom Christie
e3c3d8826f
Merge pull request #3071 from antonyc/patch-1
...
Made exception message more verbose
2015-07-02 10:14:01 +01:00
Michael Bacon
5f40ab53de
Ability to customize DateTimeField with a custom datetime_parser
2015-06-30 14:51:47 -04: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
321133242f
Unsaved file objects may not have an associated URL.
2015-06-24 14:24:19 +01:00
Tom Christie
39ece9bee0
Support allow_blank=False with trim_whitespace=True.
2015-06-24 13:32:54 +01:00
Anton Chaporgin
47acec0f9d
Made exception message more verbose
...
This exception helps you to upgrade from 2 -> 3 and since a lot of fields may be in 2 using serializers.Field as parent class, this message should contain at least name of upgraded field to help user to grep and fix the codebase faster.
2015-06-24 11:59:49 +03:00
Tom Christie
a3d6601e09
Merge pull request #3008 from linovia/feature/ipaddress-fix
...
`IPAddressField` improvements
2015-06-04 14:54:50 +01:00
Tom Christie
e8cc948f6b
Merge pull request #2695 from delinhabit/refactor-decimalfield
...
[enhancement] Refactored DecimalField to allow easier subclassing
2015-06-04 14:26:28 +01:00
Xavier Ordoquy
dee5fb5647
Merge remote-tracking branch 'reference/master' into feature/ipaddress-fix
...
Conflicts:
docs/api-guide/fields.md
2015-06-04 14:21:33 +01:00
Xavier Ordoquy
0c66c7cfa6
Merge pull request #3000 from linovia/ovangle/uuid_format2
...
Add 'format' argument to UUIDField
2015-06-03 12:32:23 +01:00
Xavier Ordoquy
f8eacc5bc0
Merge pull request #2993 from linovia/bug/2894
...
MultipleChoiceField empties incorrectly on a partial update using multipart/form-data (#2894 )
2015-06-01 17:48:20 +01:00
Nicolas Delaby
f701ecceb7
Add DurationField
2015-06-01 18:20:53 +02:00
Xavier Ordoquy
5c90bf9cc0
Fix for #2894 thanks to @carljm
2015-06-01 16:13:35 +01:00
Michał Hernas
e8c226c2db
Fixed lint problems
2015-05-18 16:55:40 +02:00
Michał Hernas
069ea31cfb
Added test ensuring DecimalField accepts 2E+2
as 200 and validates
...
decimal place correctly.
2015-05-18 16:42:24 +02:00
David Sanders
b7edd46313
Use simpler dict.get() rather than try/except
2015-05-16 01:01:27 +10:00
David Sanders
8e84a9f6d0
Allow invalid outputs to pass through to_representation() for ChoiceField & MultipleChoiceField
2015-05-15 18:59:10 +10:00
Ryan Allen
cbea03c85b
DateField to_representation can handle str and empty values. Fixes #2656 , #2687 .
2015-04-23 19:31:46 -05:00
Ryan Allen
32acc4a72b
Set IntegerField class variable for compiled decimal regex, comment for purpose
2015-04-21 10:52:52 -04:00
Ryan Allen
1f10a39d31
Match IntegerField validation with Django's, preventing decimal values being stored as ints, fixes #2835 .
...
Match IntegerField validation with Django IntegerField, prevents decimal values being stored as ints, fixes #2835
On branch master
2015-04-20 11:03:05 -04:00
Thomas Stephenson
236b731072
Add 'format' argument to UUIDField
...
To allow serializations to control the representation format of a
UUID value
2015-04-12 22:07:25 +10:00
Andrea Grandi
d6effbf779
Remove unpack_ipv4 parameter
2015-04-02 19:40:17 +01:00
Michael Blatherwick
56ec7b152e
Fixed docstring typo
2015-03-27 18:00:19 +00:00
Andrea Grandi
466575bee6
Lowercase the input
2015-03-26 18:14:53 +00:00
Ion Scerbatiuc
022c4d540b
Refactored DecimalField to allow easier subclassing
2015-03-14 07:16:17 -07:00
Aider Ibragimov
c44376c613
remove unnecessary check
2015-03-04 14:17:58 +03:00
Tymur Maryokhin
391b0ae21b
Call default.set_context() only on create. Refs #2619 .
2015-03-03 17:02:12 +01:00
Aider Ibragimov
e5d95e319e
fix FilePathField kwargs for django < 1.5
2015-03-03 16:58:04 +03:00
Aider Ibragimov
04cc1964bd
remove dict compehension
2015-03-03 16:45:20 +03:00
Aider Ibragimov
5f8338e276
Merge branch 'master' of https://github.com/tomchristie/django-rest-framework into feature/filepathfield
2015-03-03 14:34:18 +03:00
Aider Ibragimov
c20a0250df
add FilePathField, update docs
2015-03-03 14:34:06 +03:00
Aider Ibragimov
de72022f80
Merge branch 'master' of https://github.com/Ins1ne/django-rest-framework into feature/ipaddress
2015-02-28 14:29:27 +03:00
Aider Ibragimov
4d5eee04a0
add IPAddressField, update docs
2015-02-28 10:11:38 +03:00
Kevin Wood
78e8b1b010
Updated CreateOnlyDefault to call set_context on its default (if callable)
2015-02-27 22:14:15 -08:00
Janusz Harkot
9098856d46
fix DictKey initial value
2015-02-27 19:46:36 +01:00
Tom Christie
cda74b5997
Merge pull request #2608 from ezheidtmann/dont-swallow-errors-in-callable-sources
...
Dont swallow errors in callable sources
2015-02-27 09:13:01 +00:00
Evan Heidtmann
e6b06c34c1
Add explanation for this exception mutation
2015-02-26 09:20:17 -08:00
Evan Heidtmann
bdb73d5588
Avoid swallowing exceptions thrown in callable attributes
2015-02-26 09:05:46 -08:00
Rense VanderHoek
91416632a8
DecimalField fix
...
max_value and min_value are not in kwargs
2015-02-21 12:31:37 +01:00
Rense VanderHoek
9cb547b85f
Validator-fix, added min/max fields to test_metadata
2015-02-20 17:34:49 +01:00
Rense VanderHoek
c8609ba652
Set field length/values as actual attributes.
...
The SimpleMetadata class in metadata.py tries to getattr() attributes
on a field. For this to work, max_length and min_length have to be
actually set as an attribute.
Did the same for min_value and max_value and added those two to
SimpleMetadata.get_field_info
2015-02-20 16:31:12 +01:00
Tom Christie
c3425accde
Fix incorrect HTML parsing for DictField
2015-02-11 14:19:07 +00:00
Tom Christie
dec3493d7c
Minor cleanup
2015-02-06 14:43:43 +00:00
José Padilla
7f801b9a01
Add trim_whitespace to CharField #2517
...
If set to `True` then leading and trailing
whitespace is trimmed. Defaults to `True`.
2015-02-06 01:09:19 -04:00
Tom Christie
4ee4b4f2dc
Merge master
2015-01-30 14:00:25 +00:00
Tom Christie
35f6a82462
Added DictField and support for HStoreField.
2015-01-23 16:27:23 +00:00
Tom Christie
e8db1834d3
Added UUIDField.
2015-01-23 15:24:06 +00:00
Tom Christie
11efde8905
Merge pull request #2373 from jakul/document-translations-3.1
...
Document how to translate DRF error messages (version 3.1)
2015-01-09 11:57:02 +00:00
Craig Blaszczyk
58ec7669ae
swap backticks for double quotes
2015-01-07 18:22:30 +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
b6ca7248eb
required=False allows omission of value for output. Closes #2342
2015-01-05 14:32:12 +00:00
Craig Blaszczyk
a90ba2bc11
update error messages for language and consistency
2015-01-02 11:08:31 +00:00
Tom Christie
77e3021fea
Better behaviour with null and '' for blank HTML fields.
2014-12-20 16:26:51 +00:00
Tom Christie
87ac64e41b
Fixes for behavior with empty HTML fields.
2014-12-18 10:36:52 +00:00
Tom Christie
3fff5cb6e0
Fix empty HTML values when a default is provided.
2014-12-17 15:13:48 +00:00
Tom Christie
af53e34dd5
Merge pull request #2279 from tomchristie/fix-serializer-repr-unicode-bug
...
Use unicode internally everywhere for 'repr'.
2014-12-15 12:04:46 +00:00
Tom Christie
72e08a3e8b
Use unicode internally everywhere for 'repr'
2014-12-15 11:55:17 +00:00
Tom Christie
488b13e7b8
Better messaging for 'Field.to_representation'. Closes #2271 .
2014-12-15 09:29:54 +00:00
Tom Christie
aa571abb20
Better errors when serializer has incorrectly named field.
2014-12-13 14:58:04 +00:00
Peter Schmidt
fa1ef33bfc
Update CharField default min_length message.
2014-12-12 11:16:29 +11:00
Tom Christie
81d0b748b4
Improve field lookup behavior for dicts/mappings. Closes #2244 . Closes #2243 .
2014-12-10 09:16:01 +00:00
José Padilla
afe7ed9333
Add allow_blank for ChoiceField #2184
...
This makes a ChoiceField optional in HTML if
model field has `blank=True` set.
2014-12-09 09:25:06 -04:00
Tom Christie
eee02a47d9
Added ListSerializer.validate(). Closes #2168 .
2014-12-08 14:56:45 +00:00
Tymur Maryokhin
d54c67d79d
Removed custom StringIO, force_text, smart_text compat
2014-12-04 03:11:42 +01:00
Tom Christie
d2d7e1dfde
Drop Field.validate
2014-11-27 16:41:53 +00:00
Tom Christie
8579222cbd
Fix for nested attribute lookups where one is a callable
2014-11-27 15:14:11 +00:00
Tom Christie
1ffe4857ec
Support callable attributes in dotted source. Closes #2142 .
2014-11-27 08:10:52 +00:00
Tom Christie
06fd63dade
Don't use default_empty_html value for partial updates. Closes #2118 .
2014-11-25 11:14:28 +00:00
Tom Christie
6794b3380a
Fixes for defaulting empty HTML fields to '', None, or empty.
2014-11-20 12:15:33 +00:00
Tom Christie
e49d22dbda
Allow blank choices to render. Closes #2071 .
2014-11-19 09:31:26 +00:00
Tom Christie
0f508c5821
Docs for advanced default argument usage. Closes #1945
2014-11-17 18:36:32 +00:00
Tom Christie
62ce653c61
Update fields.py
2014-11-10 14:44:26 +00:00
Tom Christie
eafb7e1e24
ModelField fix. Closes #2018 .
2014-11-07 11:44:16 +00:00
Tymur Maryokhin
ea76dc18b6
Fixed base_url duplication in FileField.use_url
...
Django already joins base_url when constructing FileField.url
2014-11-06 18:20:55 +01:00
Tom Christie
4e001dbb7a
Drop usage of SortedDict. Closes #2027 .
2014-11-06 12:00:30 +00:00
Tom Christie
ed541864e6
Support for bulk create. Closes #1965 .
2014-11-06 10:34:59 +00:00
Tom Christie
73daf40715
ModelField should support max_length. Closes #2018 .
2014-11-05 15:51:45 +00:00
Tom Christie
0a5d088287
Fix failing copy of fields when RegexValidator is used. Closes #1954 .
2014-11-05 10:48:30 +00:00
Tom Christie
26b6180f50
Support None if initial part of dotted lookup returns None. Closes #1223 .
2014-11-05 10:28:34 +00:00
Tom Christie
207208fedf
Lazy loading of fields and validators. Closes #1963 .
2014-10-31 16:38:39 +00:00
Tom Christie
bacf8cfa9d
Guard against malicious string inputs for numbers. Closes #1903 .
2014-10-31 15:41:00 +00:00
Tom Christie
9ebaabd6eb
unique_for_date/unique_for_month/unique_for_year
2014-10-28 16:21:49 +00:00
Tom Christie
ae53fdff9c
First pass at unique_for_date, unique_for_month, unique_for_year
2014-10-22 13:30:28 +01:00
Tom Christie
05cbec9dd7
Use serializers.ValidationError
2014-10-17 13:23:14 +01:00
Tom Christie
32fd82ba0d
get_attribute method on fields
2014-10-16 20:47:57 +01:00
Tom Christie
b4f3379c70
Support fields that reference a simple callable
2014-10-15 15:13:28 +01:00
Tom Christie
d9a199ca0d
exceptions.ValidationFailed, not Django's ValidationError
2014-10-10 14:16:09 +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
5ead8dc89d
Support empty file fields
2014-10-08 16:59:52 +01:00
Tom Christie
093febb912
Tests for relational fields
2014-10-08 11:04:08 +01:00
Tom Christie
6bfed6f852
Enforce uniqueness validation for relational fields
2014-10-07 17:04:53 +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
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
381771731f
Use six.text_type instead of str everywhere
2014-10-01 13:09:14 +01:00
Tom Christie
d1b2c8ac7f
Absolute URLs for file fields
2014-09-29 14:12:26 +01:00
Tom Christie
d2d412993f
.validate() on serializer fields
2014-09-29 11:24:21 +01:00
Tom Christie
43fd5a8730
Uniqueness validation
2014-09-29 09:24:03 +01:00
Tom Christie
dee3f78cb6
FileField and ImageField
2014-09-26 17:06:20 +01:00
Tom Christie
6090144608
Simplify serialization slightly
2014-09-26 14:32:44 +01:00
Tom Christie
2e87de0143
Added ListField
2014-09-26 13:08:20 +01:00
Tom Christie
2859eaf524
request.data attribute
2014-09-26 10:46:52 +01:00
Tom Christie
417fe1b675
Partial support
2014-09-25 13:37:26 +01:00
Tom Christie
3a5335f09f
Fix syntax error
2014-09-25 13:12:02 +01:00
Tom Christie
8ee92f8a18
Refuse to downcast from datetime to date or time
2014-09-25 13:10:33 +01:00
Tom Christie
b47ca158b9
Check for redundant on SerializerMethodField
2014-09-25 12:09:12 +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
1420c76453
Ensure proper sorting of 'choices' attribute on ChoiceField
2014-09-25 10:49:25 +01:00
Tom Christie
fb1546ee50
Enforce field_name != source
2014-09-24 20:53:37 +01:00
Tom Christie
127c0bd3d6
Custom deepcopy on Field classes
2014-09-24 20:25:59 +01:00
Tom Christie
0404f09a7e
NullBooleanField
2014-09-23 14:30:17 +01:00
Tom Christie
f22d0afc3d
Tests for field choices
2014-09-23 14:15:00 +01:00
Tom Christie
5d80f7f932
allow_blank, allow_null
2014-09-22 17:46:02 +01:00
Tom Christie
5a95baf2a2
Tests & tweaks for ChoiceField
2014-09-22 16:52:57 +01:00
Tom Christie
b5454dd022
Tests and tweaks for choice fields
2014-09-22 16:50:04 +01:00
Tom Christie
e5f0a97595
More compat fixes
2014-09-22 16:45:06 +01:00
Tom Christie
5586b6581d
Support format=None for date/time fields
2014-09-22 16:02:59 +01:00
Tom Christie
4db23cae21
Tweaks to DecimalField
2014-09-22 15:34:06 +01:00
Tom Christie
249253a144
Fix compat issues
2014-09-22 14:54:33 +01:00
Tom Christie
c54f394904
Ensure 'messages' in fields are respected in preference to default validator messages
2014-09-22 13:57:45 +01:00
Tom Christie
afb3f8ab0a
Tests and tweaks for text fields
2014-09-22 13:26:47 +01:00
Tom Christie
af46fd6b00
Field tests and associated cleanup
2014-09-22 12:25:57 +01:00
Tom Christie
5b7e4af0d6
get_base_field() refactor
2014-09-18 11:20:56 +01:00
Tom Christie
40dc588a37
Drop label from serializer fields when not needed
2014-09-15 09:50:51 +01:00
Tom Christie
e6c88a4233
Drop usage of validatiors.EMPTY_VALUES
2014-09-12 19:54:27 +01:00
Tom Christie
79715f01f8
Coerce dates etc to ISO_8601 in seralizer, by default.
2014-09-12 12:10:22 +01:00
Tom Christie
5e39e159ee
UNICODE_JSON and COMPACT_JSON settings
2014-09-12 11:38:22 +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