diff options
| author | Tom Christie | 2011-05-16 09:14:01 +0100 |
|---|---|---|
| committer | Tom Christie | 2011-05-16 09:14:01 +0100 |
| commit | e92002ddde31fcc4ba3dee0f4a92a114c3c3a959 (patch) | |
| tree | 27753af4e47398e01ca10e519e3e35c987ef8992 | |
| parent | 47645319c94fc536a2b3675edf8f2a02c1d11d12 (diff) | |
| download | django-rest-framework-e92002ddde31fcc4ba3dee0f4a92a114c3c3a959.tar.bz2 | |
nested resources now working
| -rw-r--r-- | djangorestframework/resources.py | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/djangorestframework/resources.py b/djangorestframework/resources.py index b3545787..19218b35 100644 --- a/djangorestframework/resources.py +++ b/djangorestframework/resources.py @@ -10,6 +10,7 @@ import inspect import re +# TODO: _IgnoreFieldException def _model_to_dict(instance, resource=None): """ @@ -32,9 +33,9 @@ def _model_to_dict(instance, resource=None): #else: # fields = set(opts.fields + opts.many_to_many) - fields = resource.fields - include = resource.include - exclude = resource.exclude + fields = resource and resource.fields or () + include = resource and resource.include or () + exclude = resource and resource.exclude or () extra_fields = fields and list(resource.fields) or [] @@ -157,8 +158,13 @@ class FormResource(Resource): On calling validate() this validator may set a `.bound_form_instance` attribute on the view, which may be used by some renderers. """ + + """ + The form class that should be used for request validation. + """ form = None + def validate_request(self, data, files): """ Given some content as input return some cleaned, validated content. @@ -261,12 +267,12 @@ class ModelResource(FormResource): If set to ``None`` then the default model form validation will be used. """ form = None - + """ The model class which this resource maps to. """ model = None - + """ The list of fields to use on the output. @@ -286,7 +292,7 @@ class ModelResource(FormResource): exclude = ('id', 'pk') """ - The list of fields to include. This is only used if ``fields`` is not set. + The list of extra fields to include. This is only used if ``fields`` is not set. """ include = ('url',) @@ -342,7 +348,7 @@ class ModelResource(FormResource): def url(self, instance): """ Attempts to reverse resolve the url of the given model instance for this resource. - + Requires a ``View`` with ``InstanceMixin`` to have been created for this resource. This method can be overridden if you need to set the resource url reversing explicitly. |
