Tom Christie
36e21153fb
Merge master
2012-11-01 23:11:28 +00:00
Tom Christie
d327c5f531
Relational field support in browseable API.
...
Add slug relational fields.
Add quickstart.
2012-11-01 23:04:13 +00:00
Tom Christie
5558c0530f
Merge pull request #351 from asfaltboy/fix_trans_choices
...
Return choices as unicode and not string
2012-11-01 06:27:28 -07:00
Tom Christie
aa779598aa
Merge pull request #352 from asfaltboy/cleanup_MultipleObjectBaseView
...
cleanup MultipleObjectBaseView remains
2012-11-01 06:12:16 -07:00
Ben Konrath
9c82f9717e
Merge branch 'master' into restframework2-filter
2012-11-01 14:06:56 +01:00
Pavel Savchenko
9a0cc7c720
since MultipleObjectBaseView was renamed MultipleObjectAPIView, it stands to reason to complete the renaming in docs and comments as well.
2012-11-01 15:06:11 +02:00
Pavel Savchenko
d3aedd5fb1
return choices as unicode and not string,
...
might as well have jsonp return unicode
2012-11-01 15:00:22 +02:00
Otto Yiu
756297ad1d
fix 'from_native' method when rel is None
...
'NoneType' object has no attribute 'to'
2012-10-31 21:40:20 -07:00
Tom Christie
027c9079f6
PUT as create should return 201. Fixes #340 .
2012-10-31 20:11:38 +00:00
Stephan Groß
ff7725f05e
added support for custom slug field and kwargs
...
without subclassing HyperlinkedRelatedField and overwriting
slug_url_kwarg and slug_field there is no possibility to use other
fields / arguments. now you can do something like this:
url(r'^users/(?P<username>\w[\w-]*)$', UserInstance.as_view(),
name='user-detail')
class ProjectSerializer(serializers.HyperlinkedModelSerializer):
created_by =
serializers.HyperlinkedRelatedField(view_name='user-detail',
slug_url_kwargs='username', slug_field='username')
2012-10-31 15:30:01 +01:00
Tom Christie
4cdd0b845e
Final docs tweaks for 2.0
2012-10-30 13:59:31 +00:00
Tom Christie
cea907f172
Raise nicer exception if queryset not Set on writable related field. Refs: #338
2012-10-30 11:10:23 +00:00
Tom Christie
0047a46020
Merge fixes for 'blank=True' fields. Fixes #324 , Fixes #325
...
Thanks to @Roarster.
2012-10-30 11:03:03 +00:00
Tom Christie
5670cb03bf
Allow use of absolute URLs when deserializing hyperlinked fields
2012-10-30 10:49:01 +00:00
Tom Christie
1b6fe9abb4
Hyperlinked serializer tests
2012-10-30 10:35:30 +00:00
Tom Christie
51a53b497b
Merge pull request #335 from tomchristie/related-field-as-instance
...
Writable related fields should return a model instance from .from_native...
2012-10-30 03:32:55 -07:00
Tom Christie
e5777a6168
Merge pull request #336 from markotibold/null_is_true_model_fields
...
Null is true model fields
2012-10-30 02:22:51 -07:00
Marko Tibold
4d90bb4af4
Fix some typos.
2012-10-30 00:30:52 +01:00
Marko Tibold
2068595297
Set a ModelSerializer field to required=False if the ModelField has null=True set.
2012-10-30 00:09:40 +01:00
Marko Tibold
6ccbdd10ad
Adding failing tests that show null=True model fields are won't validate if their value is omitted.
2012-10-30 00:03:24 +01:00
Tom Christie
b6c90c0d68
Fix slug based put as create test
2012-10-29 17:20:06 +00:00
Tom Christie
215edc5dfa
Merge branch 'restframework2' of https://github.com/tomchristie/django-rest-framework into restframework2
2012-10-29 17:09:01 +00:00
Tom Christie
d206c686a6
Fixes for urls with suffixes
2012-10-29 17:08:38 +00:00
Tom Christie
343da8e3cf
PUT as create should return 200
2012-10-29 16:13:08 +00:00
Tom Christie
6b6f0e682b
Merge pull request #331 from markotibold/test_put_as_create
...
Test put as create
2012-10-29 09:11:32 -07:00
Tom Christie
ee8ab283f0
Style tweaks
2012-10-29 14:41:33 +00:00
Tom Christie
49f87cfbab
Deal with None and missing values
2012-10-29 14:10:38 +00:00
Tom Christie
dfcb560f8f
Fix up login styling
2012-10-29 13:57:46 +00:00
Tom Christie
752f191a76
Fix breadcrumbs
2012-10-29 13:18:51 +00:00
Tom Christie
f4edd92566
Writable welated fields should return a model instance from .from_native(), not a pk
2012-10-29 12:51:21 +00:00
Tom Christie
de6908fbef
Remove recursion detection
2012-10-28 20:50:14 +00:00
Tom Christie
351382fe35
nested -> depth
2012-10-28 20:43:43 +00:00
Tom Christie
6e4ab09aae
readonly -> read_only
2012-10-28 20:21:45 +00:00
Marko Tibold
1a16289ede
Get the correct instance
2012-10-28 20:56:48 +01:00
Marko Tibold
5bb6680376
test_put_as_create_on_id_based_url should check for a created-response.
2012-10-28 20:45:42 +01:00
Tom Christie
3d3df22d82
Merge pull request #330 from tomchristie/tutorial-refactor
...
Tutorial refactor
2012-10-28 12:42:10 -07:00
Tom Christie
1b2c235847
Merge pull request #327 from tomchristie/allow-any-permission
...
Add AllowAny permission
2012-10-28 12:10:12 -07:00
Marko Tibold
bc99142c7d
Added wo tests. One for PUTing on a non-existing id-based url. And another for PUTing on a non-existing slug-based url.
...
Fix doctoring for 'test_put_cannot_set_id'.
2012-10-28 19:35:50 +01:00
Tom Christie
12c363c1fe
TemplateHTMLRenderer, StaticHTMLRenderer
2012-10-28 18:12:56 +00:00
Tom Christie
af96fe05d0
Add AllowAny class
2012-10-27 20:17:49 +01:00
Tom Christie
d995742afc
Add AllowAny permission
2012-10-27 20:04:33 +01:00
Tom Christie
b9e576f16e
Push tests into a seperate app namespace 'rest_framework.test'
...
Prevents tests from running by default when rest_framework is installed
as 3rd party app.
Fixes #316 , #185
2012-10-27 18:44:23 +01:00
Tom Christie
44207a347a
pep8
2012-10-27 10:33:01 +01:00
Tom Christie
67f1265e49
Fix failing 'default' on ModelSerializer
2012-10-26 13:20:30 +01:00
Tom Christie
fc4614a89c
Whitespace
2012-10-26 12:46:41 +01:00
Tom Christie
2efb5f8a14
Object-level permissions respected by Browseable API
2012-10-26 12:46:15 +01:00
Tom Christie
32d602880f
Choice fields from ModelSerializer.
2012-10-26 12:45:52 +01:00
Tom Christie
195006bbc3
Drop resources from codebase since implementation is only partial (Created resoorces-routers branch for future reference)
2012-10-26 09:27:59 +01:00
Tom Christie
e987737621
Merge pull request #320 from j4mie/split-generic-views
...
Rename generic base classes, and add CreateAPIView, DeleteAPIView, UpdateAPIView.
2012-10-25 06:31:25 -07:00
Jamie Matthews
27935f6f66
Rework generic view class names
2012-10-25 13:50:39 +01:00
Jamie Matthews
d6e10b50fc
Re-add implementation of multiple-operation generic views to remove diamond inheritance
2012-10-25 12:26:08 +01:00
Tom Christie
8c360770c1
Add pre_save hook in generic views
2012-10-25 12:15:31 +01:00
Jamie Matthews
16e249d60d
Merge branch 'restframework2' into split-generic-views
...
* restframework2:
Fix ModelSerializer logic for fields with default value, which should have required=False set
Added @diviei - Thanks!
Fix typo reported by @diviei
2012-10-25 11:12:10 +01:00
Tom Christie
3e751ccd8a
Fix ModelSerializer logic for fields with default value, which should have required=False set
2012-10-24 20:58:28 +01:00
Jamie Matthews
32ebf96ef6
Split concrete generic views up into separate bits of functionality
2012-10-24 18:22:29 +01:00
Jamie Matthews
607c31c6d8
Move per-field and cross-field validation into a single method
2012-10-24 12:12:27 +01:00
Jamie Matthews
d60d598e02
Clean up internal names and documentation
2012-10-24 11:43:30 +01:00
Jamie Matthews
ac2d39892d
Add cross-field validate method
2012-10-24 11:39:17 +01:00
Jamie Matthews
388a807f64
Switch from clean_<fieldname> to validate_<fieldname>, clarify documentation
2012-10-24 11:27:01 +01:00
Jamie Matthews
51fae73f3d
Implement per-field validation on Serializers
2012-10-24 09:28:10 +01:00
Tom Christie
5d76f03ac6
Merge pull request #315 from Roarster/emptymanytomany
...
#314 Fix for manytomany field being required in the payload even though ...
2012-10-22 15:00:56 -07:00
Ian Strachan
c7a0d52fd7
#314 Fix for manytomany field being required in the payload even though the field is specified as readonly in the serializer
2012-10-22 22:24:26 +01:00
Marko Tibold
d1e05ea8d4
Merge commit '95a670de41a246777bc1e448dca8cc576b7b86ea' into BrowsableAPIRenderer
...
Conflicts:
rest_framework/renderers.py - manually resolved conflict
2012-10-22 20:09:36 +02:00
Tom Christie
95a670de41
Merge field changes: .default and .widget
2012-10-22 15:24:09 +01:00
Jamie Matthews
45d4622f09
Fix serialization of reverse relationships
2012-10-22 15:12:25 +01:00
Marko Tibold
ab1a12bfec
Refactoring BrowsableAPIRenderer
2012-10-21 23:04:12 +02:00
Marko Tibold
c30712a5c8
Remove redundant check if method=='DELETE'
2012-10-21 22:23:54 +02:00
Tom Christie
93f1aa4f69
Remove initial
kwarg, add default
.
2012-10-21 17:41:05 +01:00
Marko Tibold
71a93930fd
Fixing spelling errors.
2012-10-21 16:34:07 +02:00
Tom Christie
efabd2bb1b
docs, docs, docs, docs, docs, docs, docs
2012-10-19 19:59:55 +01:00
Tom Christie
a7390fe704
Fix up widget choices
2012-10-19 09:47:01 +01:00
Tom Christie
dab177e29e
Drop help_text
2012-10-19 09:20:54 +01:00
Tom Christie
643d3491a6
First pass at pastebin tutorial
2012-10-18 23:48:52 +01:00
Ian Strachan
d70e387f10
Added tests for dotted notation in serializer field source
2012-10-18 23:45:16 +01:00
Tom Christie
c341799344
Apply readonly on RelatedField
2012-10-18 22:19:54 +01:00
Tom Christie
d1746e2f3c
Allow callables in dotted notation like Field(source='foo.bar')
2012-10-18 22:03:48 +01:00
Tom Christie
fed235dd01
Make settings consistent with corrosponding view attributes
2012-10-17 23:09:11 +01:00
Tom Christie
e126b61542
Negotiation API finalized. .select_renderers and .select_parsers
2012-10-17 22:58:18 +01:00
Tom Christie
fb56f215ae
Added media_type
to .parse()
- Consistency with renderer API.
2012-10-17 22:39:07 +01:00
Tom Christie
4231995fbd
parser_context includes view
, request
, args
, kwargs
. (Not meta
and upload_handlers
)
...
Consistency with renderer API.
2012-10-17 22:19:59 +01:00
Tom Christie
99d48f9003
Drop .parse_string_or_stream() - keep API minimal.
2012-10-17 22:07:56 +01:00
Rob Dobson
38673c35d4
Make default field check safe for boolean values whereby 'False' may be an acceptable default value
2012-10-17 19:12:34 +01:00
eofs
520a183cc6
Typo in class name
2012-10-17 10:41:23 +03:00
Tom Christie
ae680b13da
Merge branch 'restframework2' of https://github.com/tomchristie/django-rest-framework into restframework2
2012-10-16 09:20:20 +01:00
Tom Christie
4fe734a91a
Merge pull request #296 from ulmus/restframework2
...
Removed serializers.TextField and related tests
2012-10-15 06:04:55 -07:00
Tom Christie
3c8f01b985
Explicit CSRF failure message. Fixes #60 .
2012-10-15 14:03:36 +01:00
Tom Christie
9c1fba3483
Tweak parsers to take parser_context
2012-10-15 13:27:50 +01:00
Jens Alm
9f3ff0105a
Removed serializer.TextField and related tests
2012-10-15 14:09:29 +02:00
Jens Alm
c942726509
Added docs, integer fields and refactored models.TextField to use CharField
...
I realized that per the django forms, there is no need for a separate
TextField, an unlimited CharField is perfectly good.
Also added default field for the different IntegerField types
2012-10-15 13:46:44 +02:00
Jens Alm
afbc9684f2
Revert "Support for request-based queryset limits on ListModelMixin"
...
This reverts commit de4604be0a
.
2012-10-15 11:49:56 +02:00
Jens Alm
de4604be0a
Support for request-based queryset limits on ListModelMixin
...
ListModelMixin uses the get_queryset from the MultipleObjectMixin. This
method can be overridden on the View class to return a different
queryset, but get_queryset doesn't accept a request parameter in. This
commit adds the limit_list hook to override if you want to limit the
queryset based on request-information such as the logged in user.
2012-10-15 11:47:56 +02:00
Jens Alm
36cc56bc9d
Added tests for TextField
2012-10-15 10:06:50 +02:00
Jens Alm
241be38340
Added TextField to recognized fields
2012-10-15 09:14:01 +02:00
Tom Christie
551c86c43a
Documentation for parsers
2012-10-14 22:43:07 +01:00
Tom Christie
7608cf1193
Improve documentation for Requests
2012-10-13 15:07:43 +01:00
Ben Konrath
1d054f9572
Use Decimal (properly) everywhere.
2012-10-11 14:19:29 +02:00
Ben Konrath
6f736a6823
Explicitly use Decimal for creating filter test data.
...
This fixes a Travis build failures on python 2.6:
https://travis-ci.org/#!/tomchristie/django-rest-framework/builds/2746628
2012-10-11 13:55:16 +02:00
Tom Christie
6300334aca
Sanitise JSON error messages
2012-10-11 13:53:12 +02:00
Tom Christie
9094f93d18
Sanitise JSON error messages
2012-10-11 11:21:50 +01:00
Ben Konrath
5454162b04
Define 'page' query field name in one place.
2012-10-11 12:01:07 +02:00
Ben Konrath
6fbd411254
Make query filters work with pagination.
2012-10-11 12:01:07 +02:00
Ben Konrath
e295f616ec
Fix small PEP8 problem.
2012-10-11 12:01:07 +02:00
Ben Konrath
692203f933
Check for 200 status when unknown filter requested.
...
This changes the test from the failing checking for status 400. See
discussion here:
https://github.com/tomchristie/django-rest-framework/pull/169#issuecomment-9240480
2012-10-11 12:01:07 +02:00
Ben Konrath
1e9ece0f93
First attempt at adding filter support.
...
The filter support uses django-filter to work its magic.
2012-10-11 12:01:07 +02:00
Tom Christie
83f39b3dce
Don't fail when no data provided
2012-10-10 16:41:08 +01:00
Tom Christie
221ecd2182
Fix session auth
2012-10-10 16:36:25 +01:00
Tom Christie
d905d1cbd3
Fix yaml rendering
2012-10-10 16:34:00 +01:00
Tom Christie
5c7f3e23ee
Tidy up APISettings object to not rely on module state
2012-10-10 12:54:40 +01:00
Tom Christie
db6b5a990b
Fix key ordering in json. (sort if it's a sorted dictc representation, or not otherwise)
2012-10-10 12:32:23 +01:00
Tom Christie
648d2be29b
Make sure JSON output in Browseable API is nicely indented
2012-10-10 12:15:18 +01:00
Tom Christie
ccd2b0117d
Permissions and throttles no longer have a view attribute on self. Explicitly passed to .has_permissions(request, view, obj=None) / .allow_request(request, view)
2012-10-10 10:02:37 +01:00
Tom Christie
900c4b625b
api_key -> auth_token to avoid TastyPie conflict
2012-10-10 09:50:15 +01:00
Tom Christie
44281c3996
Remove 'tut 6 - resources' from the docs, since it doesn't exist yet
2012-10-10 09:36:18 +01:00
Tom Christie
a3ab66eca4
Add 'to_many' flag in get_related_field
2012-10-09 17:51:32 +01:00
Tom Christie
9bbc1cc403
Add flag in get_related_field
2012-10-09 17:49:04 +01:00
Tom Christie
97a7f27c82
Rename HTMLTemplateRenderer -> HTMLRenderer, DocuemntingHTMLRenderer -> BrowseableAPIRenderer
2012-10-09 15:58:48 +01:00
Tom Christie
94401b43d2
Flesh out quickstart guide and make some style tweaks
2012-10-09 13:50:26 +01:00
Tom Christie
7c4d50f621
Fix browseable API form display error for authenticated permissions
2012-10-09 12:48:49 +01:00
Tom Christie
115e61be09
Added quickstart guide
2012-10-09 12:01:17 +01:00
Tom Christie
dc52ceaaa2
Remove Field handling relations/relationship managers - use RelatedField/ManyRelatedField instead
2012-10-09 10:25:01 +01:00
Tom Christie
5c17a60176
Tweak authtoken
2012-10-09 09:57:31 +01:00
Tom Christie
beea6487b2
Function based views get proper naming in browseable API
2012-10-09 09:57:08 +01:00
Tom Christie
65f592866c
Fix issue where required fields were not being properly validated. Also make model fields with a default value be not required
2012-10-08 17:53:18 +01:00
Tom Christie
4a21b3557e
Fix fiddly content-overloading bug
2012-10-08 17:10:50 +01:00
Tom Christie
f79ed6175d
Add RetrieveDestroyAPIView and remove Metadata mixin
2012-10-08 14:13:15 +01:00
Tom Christie
52ba2e3333
Fix #285
2012-10-08 12:52:56 +01:00
Tom Christie
f4d4d54e03
Adding migration and changelog docs
2012-10-08 12:17:43 +01:00
Tom Christie
0b08d25297
Merge branch 'restframework2' of https://github.com/tomchristie/django-rest-framework into restframework2
2012-10-05 19:26:45 +01:00
Tom Christie
33ac2fd959
Remove unused test file
2012-10-05 17:07:25 +01:00
Tom Christie
4e7fffa993
Merge pull request #284 from maximilianhurl/doc-styles
...
Added sticky footer and styles to HTML API page
2012-10-05 09:04:17 -07:00
Tom Christie
cc21948a69
Fix django 1.3 bug
2012-10-05 17:02:33 +01:00
Max Hurl
101f06b50b
Added dabapps styling to html api
2012-10-05 17:00:24 +01:00
Tom Christie
2533c2452b
Support PUT for create
2012-10-05 16:24:52 +01:00
Tom Christie
7218bcbade
Add test for non-GET methods to api_view decorator
2012-10-05 15:55:45 +01:00
Tom Christie
2a89cb4fb7
Fix view_name argument to HyperlinkedIdentityField
2012-10-05 15:47:34 +01:00
Tom Christie
102e906840
Fix view_name argument to HyperlinkedIdentityField
2012-10-05 15:46:45 +01:00
Tom Christie
484ee8cc27
Add view_name argument to HyperlinkedIdentityField
2012-10-05 15:44:08 +01:00
Tom Christie
3e77090b21
Fix bug in format suffix patterns
2012-10-05 15:38:12 +01:00
Tom Christie
272fddc952
Fix bug in format suffix patterns
2012-10-05 15:37:50 +01:00
Tom Christie
9d8bce8f5b
Remove Parser.can_handle_request()
2012-10-05 14:48:33 +01:00
Tom Christie
3e862c7737
Tweak view slightly
2012-10-05 14:22:02 +01:00
Tom Christie
2575ea92aa
Docs for template responses
2012-10-05 13:04:34 +01:00
Tom Christie
26c7d6df6c
HTMLTemplateRenderer working
2012-10-05 12:13:44 +01:00
Tom Christie
4af7fb96f7
Tidy up renderers slightly
2012-10-05 11:12:52 +01:00
Tom Christie
ed281be3fb
User .accepted_renderer, .accepted_media_type
2012-10-05 10:33:44 +01:00
Tom Christie
d07dc77e91
Accepted media type uses most specific of client/renderer media types.
2012-10-05 10:23:47 +01:00
Tom Christie
693892ed01
Fix for field to make it easier to access field relationships
2012-10-04 22:07:24 +01:00
Tom Christie
cc0d2601b8
Minor fixes
2012-10-04 21:36:40 +01:00
Tom Christie
c91d926b06
Initial tests for hyperlinked relationships
2012-10-04 16:58:18 +01:00
Tom Christie
55e9cbecac
Tweaks
2012-10-04 15:01:44 +01:00