GithubHelp home page GithubHelp logo

Nested serializers about drf-cached-instances HOT 2 OPEN

creynold avatar creynold commented on July 17, 2024
Nested serializers

from drf-cached-instances.

Comments (2)

jwhitlock avatar jwhitlock commented on July 17, 2024

I don't used nested serializers myself, but something like this would work to turn a PkOnlyModel into a CachedModel:

cached_model = CachedQueryset(Cache(), OrigModel.objects.all()).get(pk=pk_only_model.pk)

Could you post the full traceback? There may be a DRF method that cachedviewsetmixin should override to make this happen without the explicit ugliness.

from drf-cached-instances.

creynold avatar creynold commented on July 17, 2024

I'll try your suggestion, in the meantime here's the full traceback:

Environment:

Request Method: GET
Request URL: http://127.0.0.1:8000/test_runs/

Django Version: 1.8.4
Python Version: 2.7.10
Installed Applications:
('django.contrib.admin',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'oauth2_provider',
 'rest_framework',
 'djoser',
 'corsheaders',
 'app.api',
 'rest_framework_swagger',
 'debug_toolbar')
Installed Middleware:
(u'debug_toolbar.middleware.DebugToolbarMiddleware',
 'django.contrib.sessions.middleware.SessionMiddleware',
 'corsheaders.middleware.CorsMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'django.middleware.clickjacking.XFrameOptionsMiddleware',
 'django.middleware.security.SecurityMiddleware')


Traceback:
File "/Users/creynold/Documents/sie-nvme-api/env/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
  125.                     response = middleware_method(request, callback, callback_args, callback_kwargs)
File "/Users/creynold/Documents/sie-nvme-api/env/lib/python2.7/site-packages/debug_toolbar/middleware.py" in process_view
  82.             response = panel.process_view(request, view_func, view_args, view_kwargs)
File "/Users/creynold/Documents/sie-nvme-api/env/lib/python2.7/site-packages/debug_toolbar/panels/profiling.py" in process_view
  134.         return self.profiler.runcall(view_func, *args, **view_kwargs)
File "/usr/local/Cellar/python/2.7.10_1/Frameworks/Python.framework/Versions/2.7/lib/python2.7/cProfile.py" in runcall
  149.             return func(*args, **kw)
File "/Users/creynold/Documents/sie-nvme-api/env/lib/python2.7/site-packages/django/views/decorators/csrf.py" in wrapped_view
  58.         return view_func(*args, **kwargs)
File "/Users/creynold/Documents/sie-nvme-api/env/lib/python2.7/site-packages/rest_framework/viewsets.py" in view
  87.             return self.dispatch(request, *args, **kwargs)
File "/Users/creynold/Documents/sie-nvme-api/env/lib/python2.7/site-packages/rest_framework/views.py" in dispatch
  466.             response = self.handle_exception(exc)
File "/Users/creynold/Documents/sie-nvme-api/env/lib/python2.7/site-packages/rest_framework/views.py" in dispatch
  463.             response = handler(request, *args, **kwargs)
File "/Users/creynold/Documents/sie-nvme-api/app/api/views.py" in list
  619.         return super(TestRunViewSet, self).list(*args, **kwargs)
File "/Users/creynold/Documents/sie-nvme-api/env/lib/python2.7/site-packages/rest_framework/mixins.py" in list
  45.             return self.get_paginated_response(serializer.data)
File "/Users/creynold/Documents/sie-nvme-api/env/lib/python2.7/site-packages/rest_framework/serializers.py" in data
  663.         ret = super(ListSerializer, self).data
File "/Users/creynold/Documents/sie-nvme-api/env/lib/python2.7/site-packages/rest_framework/serializers.py" in data
  228.                 self._data = self.to_representation(self.instance)
File "/Users/creynold/Documents/sie-nvme-api/env/lib/python2.7/site-packages/rest_framework/serializers.py" in to_representation
  603.             self.child.to_representation(item) for item in iterable
File "/Users/creynold/Documents/sie-nvme-api/env/lib/python2.7/site-packages/rest_framework/serializers.py" in to_representation
  461.                 ret[field.field_name] = field.to_representation(attribute)
File "/Users/creynold/Documents/sie-nvme-api/env/lib/python2.7/site-packages/rest_framework/serializers.py" in to_representation
  452.                 attribute = field.get_attribute(instance)
File "/Users/creynold/Documents/sie-nvme-api/env/lib/python2.7/site-packages/rest_framework/fields.py" in get_attribute
  418.             raise type(exc)(msg)

Exception Type: AttributeError at /test_runs/
Exception Value: Got AttributeError when attempting to get a value for field `type` on serializer `NestedSerializer`.
The serializer field might be named incorrectly and not match any attribute or key on the `PkOnlyModel` instance.
Original exception text was: 'PkOnlyModel' object has no attribute 'type'.

from drf-cached-instances.

Related Issues (1)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.