Skip to content

Instantly share code, notes, and snippets.

@korgx9
Created December 12, 2016 12:02
Show Gist options
  • Save korgx9/a51cd5b452f89cb60e960df9571838b0 to your computer and use it in GitHub Desktop.
Save korgx9/a51cd5b452f89cb60e960df9571838b0 to your computer and use it in GitHub Desktop.

Revisions

  1. korgx9 created this gist Dec 12, 2016.
    344 changes: 344 additions & 0 deletions gistfile1.txt
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,344 @@
    TypeError at /api/v1/users/3/orders
    Got a `TypeError` when calling `Order.objects.create()`. This may be because you have a writable field on the serializer class that is not a valid argument to `Order.objects.create()`. You may need to make the field read-only, or override the OrderSerializer.create() method to handle this correctly.
    Original exception was:
    Traceback (most recent call last):
    File \"/usr/local/lib/python2.7/site-packages/rest_framework/serializers.py\", line 902, in create
    instance = ModelClass.objects.create(**validated_data)
    File \"/usr/local/lib/python2.7/site-packages/django/db/models/manager.py\", line 85, in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
    File \"/usr/local/lib/python2.7/site-packages/django/db/models/query.py\", line 399, in create
    obj.save(force_insert=True, using=self.db)
    File \"/usr/src/app/santehnik/order/models.py\", line 159, in save
    self.attributes = json.loads(self.attributes)
    File \"/usr/local/lib/python2.7/json/__init__.py\", line 339, in loads
    return _default_decoder.decode(s)
    File \"/usr/local/lib/python2.7/json/decoder.py\", line 364, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
    TypeError: expected string or buffer


    Request Method: POST
    Request URL: http://192.168.0.123:1248/api/v1/users/3/orders
    Django Version: 1.10.4
    Python Executable: /usr/local/bin/python
    Python Version: 2.7.12
    Python Path: [\'/usr/src/app\', \'/usr/local/lib/python27.zip\', \'/usr/local/lib/python2.7\', \'/usr/local/lib/python2.7/plat-linux2\', \'/usr/local/lib/python2.7/lib-tk\', \'/usr/local/lib/python2.7/lib-old\', \'/usr/local/lib/python2.7/lib-dynload\', \'/usr/local/lib/python2.7/site-packages\', \'/usr/src/app\']
    Server time: Mon, 12 Dec 2016 17:58:02 +0600
    Installed Applications:
    (\'django.contrib.admin\',
    \'django.contrib.auth\',
    \'django.contrib.contenttypes\',
    \'django.contrib.sessions\',
    \'django.contrib.messages\',
    \'django.contrib.staticfiles\',
    \'corsheaders\',
    \'push_notifications\',
    \'django_helpers\',
    \'rest_framework\',
    \'rest_framework.authtoken\',
    \'santehnik.core\',
    \'santehnik.account\',
    \'santehnik.brands\',
    \'santehnik.my_auth\',
    \'santehnik.order\',
    \'santehnik.review\',
    \'santehnik.comment\',
    \'santehnik.private_messages\',
    \'santehnik.adminpanel\')
    Installed Middleware:
    (\'corsheaders.middleware.CorsMiddleware\',
    \'django.contrib.sessions.middleware.SessionMiddleware\',
    \'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 \"/usr/local/lib/python2.7/site-packages/django/core/handlers/exception.py\" in inner
    39. response = get_response(request)

    File \"/usr/local/lib/python2.7/site-packages/django/core/handlers/base.py\" in _legacy_get_response
    249. response = self._get_response(request)

    File \"/usr/local/lib/python2.7/site-packages/django/core/handlers/base.py\" in _get_response
    187. response = self.process_exception_by_middleware(e, request)

    File \"/usr/local/lib/python2.7/site-packages/django/core/handlers/base.py\" in _get_response
    185. response = wrapped_callback(request, *callback_args, **callback_kwargs)

    File \"/usr/local/lib/python2.7/site-packages/django/views/decorators/csrf.py\" in wrapped_view
    58. return view_func(*args, **kwargs)

    File \"/usr/local/lib/python2.7/site-packages/rest_framework/viewsets.py\" in view
    83. return self.dispatch(request, *args, **kwargs)

    File \"/usr/local/lib/python2.7/site-packages/rest_framework/views.py\" in dispatch
    477. response = self.handle_exception(exc)

    File \"/usr/local/lib/python2.7/site-packages/rest_framework/views.py\" in handle_exception
    437. self.raise_uncaught_exception(exc)

    File \"/usr/local/lib/python2.7/site-packages/rest_framework/views.py\" in dispatch
    474. response = handler(request, *args, **kwargs)

    File \"/usr/src/app/santehnik/order/views.py\" in create
    74. self.perform_create(serializer)

    File \"/usr/local/lib/python2.7/site-packages/rest_framework/mixins.py\" in perform_create
    26. serializer.save()

    File \"/usr/src/app/santehnik/order/serializers.py\" in save
    40. return super(OrderSerializer, self).save(**kwargs)

    File \"/usr/local/lib/python2.7/site-packages/rest_framework/serializers.py\" in save
    214. self.instance = self.create(validated_data)

    File \"/usr/local/lib/python2.7/site-packages/rest_framework/serializers.py\" in create
    919. raise TypeError(msg)

    Exception Type: TypeError at /api/v1/users/3/orders
    Exception Value: Got a `TypeError` when calling `Order.objects.create()`. This may be because you have a writable field on the serializer class that is not a valid argument to `Order.objects.create()`. You may need to make the field read-only, or override the OrderSerializer.create() method to handle this correctly.
    Original exception was:
    Traceback (most recent call last):
    File \"/usr/local/lib/python2.7/site-packages/rest_framework/serializers.py\", line 902, in create
    instance = ModelClass.objects.create(**validated_data)
    File \"/usr/local/lib/python2.7/site-packages/django/db/models/manager.py\", line 85, in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
    File \"/usr/local/lib/python2.7/site-packages/django/db/models/query.py\", line 399, in create
    obj.save(force_insert=True, using=self.db)
    File \"/usr/src/app/santehnik/order/models.py\", line 159, in save
    self.attributes = json.loads(self.attributes)
    File \"/usr/local/lib/python2.7/json/__init__.py\", line 339, in loads
    return _default_decoder.decode(s)
    File \"/usr/local/lib/python2.7/json/decoder.py\", line 364, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
    TypeError: expected string or buffer

    Request information:
    USER: 996555983099

    GET: No GET data

    POST: No POST data

    FILES: No FILES data

    COOKIES: No cookie data

    META:
    CONTENT_LENGTH = \'903\'
    CONTENT_TYPE = \'application/json\'
    DJANGO_SETTINGS_MODULE = \'santehnik.settings\'
    DJ_DEBUG = \'true\'
    GATEWAY_INTERFACE = \'CGI/1.1\'
    GPG_KEY = \'C01E1CAD5EA2C4F0B8E3571504C367C218ADD4FF\'
    HOME = \'/root\'
    HOSTNAME = \'3e9de1b9ff99\'
    HTTP_ACCEPT = \'*/*\'
    HTTP_ACCEPT_ENCODING = \'gzip;q=1.0, compress;q=0.5\'
    HTTP_ACCEPT_LANGUAGE = \'en;q=1.0\'
    HTTP_AUTHORIZATION = \'Token 87069d5071234166dd95febd0737d2242688d0a8\'
    HTTP_CONNECTION = \'close\'
    HTTP_HOST = \'192.168.0.123:1248\'
    HTTP_USER_AGENT = \'Tachki.kg/1 (kg.mirsoftllc.tachki; build:1; iOS 10.1.0) Alamofire/3.5.1\'
    LANG = \'C.UTF-8\'
    PATH = \'/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\'
    PATH_INFO = u\'/api/v1/users/3/orders\'
    POSTGRES_DB = \'postgres\'
    POSTGRES_HOST = \'postgres\'
    POSTGRES_PASSWORD = \'postgres\'
    POSTGRES_PORT = \'5432\'
    POSTGRES_USER = \'postgres\'
    PWD = \'/usr/src/app\'
    PYTHONUNBUFFERED = \'1\'
    PYTHON_PIP_VERSION = \'9.0.1\'
    PYTHON_VERSION = \'2.7.12\'
    QUERY_STRING = \'\'
    REMOTE_ADDR = \'172.18.0.1\'
    REMOTE_HOST = \'\'
    REQUEST_METHOD = \'POST\'
    RUN_MAIN = \'true\'
    SCRIPT_NAME = u\'\'
    SECRET_KEY = \'tachki\'
    SERVER_NAME = \'3e9de1b9ff99\'
    SERVER_PORT = \'8000\'
    SERVER_PROTOCOL = \'HTTP/1.0\'
    SERVER_SOFTWARE = \'WSGIServer/0.1 Python/2.7.12\'
    TZ = \'Asia/Bishkek\'
    wsgi.errors = <open file \'<stderr>\', mode \'w\' at 0x7fc3cf43f1e0>
    wsgi.file_wrapper = \'\'
    wsgi.input = <socket._fileobject object at 0x7fc3bede3050>
    wsgi.multiprocess = False
    wsgi.multithread = True
    wsgi.run_once = False
    wsgi.url_scheme = \'http\'
    wsgi.version =

    Settings:
    Using settings module santehnik.settings
    ABSOLUTE_URL_OVERRIDES = {}
    ADMINPANEL_LOGIN_URL = \'/admin-panel/signin/\'
    ADMINPANEL_MAX_PAGE_SIZE = 10
    ADMINPANEL_REDIRECT_URL = \'/admin-panel/users/\'
    ADMINS = []
    ALLOWED_HOSTS = \'*\'
    APPEND_SLASH = True
    AUTHENTICATION_BACKENDS = [u\'django.contrib.auth.backends.ModelBackend\']
    AUTH_PASSWORD_VALIDATORS = u\'********************\'
    AUTH_USER_MODEL = \'account.User\'
    BASE_DIR = \'/usr/src/app\'
    CACHES = {u\'default\': {u\'BACKEND\': u\'django.core.cache.backends.locmem.LocMemCache\'}}
    CACHE_MIDDLEWARE_ALIAS = u\'default\'
    CACHE_MIDDLEWARE_KEY_PREFIX = u\'********************\'
    CACHE_MIDDLEWARE_SECONDS = 600
    CELERY_ACCEPT_CONTENT = [\'json\']
    CELERY_BROKER_URL = \'amqp://guest:guest@rabbit//\'
    CELERY_TASK_SERIALIZER = \'json\'
    CORS_ORIGIN_ALLOW_ALL = False
    CSRF_COOKIE_AGE = 31449600
    CSRF_COOKIE_DOMAIN = None
    CSRF_COOKIE_HTTPONLY = False
    CSRF_COOKIE_NAME = u\'csrftoken\'
    CSRF_COOKIE_PATH = u\'/\'
    CSRF_COOKIE_SECURE = False
    CSRF_FAILURE_VIEW = u\'django.views.csrf.csrf_failure\'
    CSRF_HEADER_NAME = u\'HTTP_X_CSRFTOKEN\'
    CSRF_TRUSTED_ORIGINS = []
    DATABASES = {\'default\': {\'ENGINE\': \'django.db.backends.postgresql_psycopg2\', \'AUTOCOMMIT\': True, \'ATOMIC_REQUESTS\': False, \'NAME\': \'postgres\', \'CONN_MAX_AGE\': 0, \'TIME_ZONE\': None, \'PORT\': \'5432\', \'HOST\': \'postgres\', \'USER\': \'postgres\', \'TEST\': {\'COLLATION\': None, \'CHARSET\': None, \'NAME\': None, \'MIRROR\': None}, \'PASSWORD\': u\'********************\', \'OPTIONS\': {}}}
    DATABASE_ROUTERS = []
    DATA_UPLOAD_MAX_MEMORY_SIZE = 2621440
    DATA_UPLOAD_MAX_NUMBER_FIELDS = 1000
    DATETIME_FORMAT = u\'N j, Y, P\'
    DATETIME_INPUT_FORMATS = [u\'%Y-%m-%d %H:%M:%S\', u\'%Y-%m-%d %H:%M:%S.%f\', u\'%Y-%m-%d %H:%M\', u\'%Y-%m-%d\', u\'%m/%d/%Y %H:%M:%S\', u\'%m/%d/%Y %H:%M:%S.%f\', u\'%m/%d/%Y %H:%M\', u\'%m/%d/%Y\', u\'%m/%d/%y %H:%M:%S\', u\'%m/%d/%y %H:%M:%S.%f\', u\'%m/%d/%y %H:%M\', u\'%m/%d/%y\']
    DATE_FORMAT = u\'N j, Y\'
    DATE_INPUT_FORMATS = [u\'%Y-%m-%d\', u\'%m/%d/%Y\', u\'%m/%d/%y\', u\'%b %d %Y\', u\'%b %d, %Y\', u\'%d %b %Y\', u\'%d %b, %Y\', u\'%B %d %Y\', u\'%B %d, %Y\', u\'%d %B %Y\', u\'%d %B, %Y\']
    DEBUG = True
    DEBUG_PROPAGATE_EXCEPTIONS = False
    DECIMAL_SEPARATOR = u\'.\'
    DEFAULT_CHARSET = u\'utf-8\'
    DEFAULT_CONTENT_TYPE = u\'text/html\'
    DEFAULT_EXCEPTION_REPORTER_FILTER = u\'django.views.debug.SafeExceptionReporterFilter\'
    DEFAULT_FILE_STORAGE = u\'django.core.files.storage.FileSystemStorage\'
    DEFAULT_FROM_EMAIL = u\'webmaster@localhost\'
    DEFAULT_INDEX_TABLESPACE = u\'\'
    DEFAULT_TABLESPACE = u\'\'
    DISALLOWED_USER_AGENTS = []
    EMAIL_BACKEND = u\'django.core.mail.backends.smtp.EmailBackend\'
    EMAIL_HOST = u\'localhost\'
    EMAIL_HOST_PASSWORD = u\'********************\'
    EMAIL_HOST_USER = u\'\'
    EMAIL_PORT = 25
    EMAIL_SSL_CERTFILE = None
    EMAIL_SSL_KEYFILE = u\'********************\'
    EMAIL_SUBJECT_PREFIX = u\'[Django] \'
    EMAIL_TIMEOUT = None
    EMAIL_USE_SSL = False
    EMAIL_USE_TLS = False
    FILE_CHARSET = u\'utf-8\'
    FILE_UPLOAD_DIRECTORY_PERMISSIONS = None
    FILE_UPLOAD_HANDLERS = [u\'django.core.files.uploadhandler.MemoryFileUploadHandler\', u\'django.core.files.uploadhandler.TemporaryFileUploadHandler\']
    FILE_UPLOAD_MAX_MEMORY_SIZE = 2621440
    FILE_UPLOAD_PERMISSIONS = None
    FILE_UPLOAD_TEMP_DIR = None
    FIRST_DAY_OF_WEEK = 0
    FIXTURES_PATH = \'/usr/src/app/fixtures\'
    FIXTURE_DIRS = []
    FORCE_SCRIPT_NAME = None
    FORMAT_MODULE_PATH = None
    HOSTNAME = \'http://92.245.109.160:1248/\'
    IGNORABLE_404_URLS = []
    INSTALLED_APPS =
    INTERNAL_IPS = []
    LANGUAGES =
    LANGUAGES_BIDI = [u\'he\', u\'ar\', u\'fa\', u\'ur\']
    LANGUAGE_CODE = \'en-us\'
    LANGUAGE_COOKIE_AGE = None
    LANGUAGE_COOKIE_DOMAIN = None
    LANGUAGE_COOKIE_NAME = u\'django_language\'
    LANGUAGE_COOKIE_PATH = u\'/\'
    LOCALE_PATHS = \'/usr/src/app/santehnik/locale\'
    LOGGING = {\'loggers\': {\'django.request\': {\'handlers\': [\'file\'], \'propagate\': True, \'level\': \'ERROR\'}}, \'version\': 1, \'disable_existing_loggers\': False, \'handlers\': {\'file\': {\'level\': \'DEBUG\', \'class\': \'logging.FileHandler\', \'filename\': \'/usr/src/app/logs/tachkikg.log\'}}}
    LOGGING_CONFIG = u\'logging.config.dictConfig\'
    LOGIN_REDIRECT_URL = u\'/accounts/profile/\'
    LOGIN_URL = u\'/accounts/login/\'
    LOGOUT_REDIRECT_URL = None
    MANAGERS = []
    MEDIA_ROOT = \'/usr/src/app/media/\'
    MEDIA_URL = \'/media/\'
    MESSAGE_STORAGE = u\'django.contrib.messages.storage.fallback.FallbackStorage\'
    MIDDLEWARE = None
    MIDDLEWARE_CLASSES =
    MIGRATION_MODULES = {}
    MONTH_DAY_FORMAT = u\'F j\'
    NUMBER_GROUPING = 0
    PASSWORD_HASHERS = u\'********************\'
    PASSWORD_RESET_TIMEOUT_DAYS = u\'********************\'
    PREPEND_WWW = False
    PUSH_NOTIFICATIONS_SETTINGS = {\'GCM_API_KEY\': u\'********************\', \'APNS_CERTIFICATE\': \'/usr/src/app/data/cert.pem\', \'APNS_FEEDBACK_HOST\': \'feedback.sandbox.push.apple.com\', \'GCM_POST_URL\': \'https://android.googleapis.com/gcm/send\', \'APNS_PORT\': 2195, \'APNS_MAX_NOTIFICATION_SIZE\': 2048, \'APNS_HOST\': \'gateway.sandbox.push.apple.com\', \'GCM_MAX_RECIPIENTS\': 1000, \'APNS_ERROR_TIMEOUT\': None, \'APNS_FEEDBACK_PORT\': 2196}
    REST_FRAMEWORK = {\'DEFAULT_PARSER_CLASSES\': (\'rest_framework.parsers.JSONParser\', \'rest_framework.parsers.FormParser\', \'rest_framework.parsers.MultiPartParser\'), \'DEFAULT_AUTHENTICATION_CLASSES\': (\'rest_framework.authentication.TokenAuthentication\', \'rest_framework.authentication.SessionAuthentication\')}
    ROOT_URLCONF = \'santehnik.urls\'
    SECRET_KEY = u\'********************\'
    SECURE_BROWSER_XSS_FILTER = False
    SECURE_CONTENT_TYPE_NOSNIFF = False
    SECURE_HSTS_INCLUDE_SUBDOMAINS = False
    SECURE_HSTS_SECONDS = 0
    SECURE_PROXY_SSL_HEADER = None
    SECURE_REDIRECT_EXEMPT = []
    SECURE_SSL_HOST = None
    SECURE_SSL_REDIRECT = False
    SEND_SMS_BACKEND = \'sms_sender.backends.SMSC\'
    SERVER_EMAIL = u\'root@localhost\'
    SESSION_CACHE_ALIAS = u\'default\'
    SESSION_COOKIE_AGE = 1209600
    SESSION_COOKIE_DOMAIN = None
    SESSION_COOKIE_HTTPONLY = True
    SESSION_COOKIE_NAME = u\'sessionid\'
    SESSION_COOKIE_PATH = u\'/\'
    SESSION_COOKIE_SECURE = False
    SESSION_ENGINE = u\'django.contrib.sessions.backends.db\'
    SESSION_EXPIRE_AT_BROWSER_CLOSE = False
    SESSION_FILE_PATH = None
    SESSION_SAVE_EVERY_REQUEST = False
    SESSION_SERIALIZER = u\'django.contrib.sessions.serializers.JSONSerializer\'
    SETTINGS_MODULE = \'santehnik.settings\'
    SHORT_DATETIME_FORMAT = u\'m/d/Y P\'
    SHORT_DATE_FORMAT = u\'m/d/Y\'
    SIGNING_BACKEND = u\'django.core.signing.TimestampSigner\'
    SILENCED_SYSTEM_CHECKS = []
    SMSC_LOGIN = \'mirsoft\'
    SMSC_PASSWORD = u\'********************\'
    SMS_SENDER_NAME = \'easyfix.kg\'
    SRC_DIR = \'/usr/src/app/santehnik\'
    STATICFILES_DIRS = []
    STATICFILES_FINDERS = [u\'django.contrib.staticfiles.finders.FileSystemFinder\', u\'django.contrib.staticfiles.finders.AppDirectoriesFinder\']
    STATICFILES_STORAGE = u\'django.contrib.staticfiles.storage.StaticFilesStorage\'
    STATIC_ROOT = \'/usr/src/app/static/\'
    STATIC_URL = \'/static/\'
    TEMPLATES = [{\'DIRS\': [\'/usr/src/app/santehnik/templates\'], \'APP_DIRS\': True, \'OPTIONS\': {\'context_processors\': [\'django.template.context_processors.debug\', \'django.template.context_processors.request\', \'django.contrib.auth.context_processors.auth\', \'django.contrib.messages.context_processors.messages\']}, \'BACKEND\': \'django.template.backends.django.DjangoTemplates\'}]
    TEST_NON_SERIALIZED_APPS = []
    TEST_RUNNER = u\'django.test.runner.DiscoverRunner\'
    THOUSAND_SEPARATOR = u\',\'
    TIME_FORMAT = u\'P\'
    TIME_INPUT_FORMATS = [u\'%H:%M:%S\', u\'%H:%M:%S.%f\', u\'%H:%M\']
    TIME_ZONE = \'Asia/Bishkek\'
    USE_ETAGS = False
    USE_I18N = True
    USE_L10N = True
    USE_THOUSAND_SEPARATOR = False
    USE_TZ = True
    USE_X_FORWARDED_HOST = False
    USE_X_FORWARDED_PORT = False
    WSGI_APPLICATION = \'santehnik.wsgi.application\'
    X_FRAME_OPTIONS = u\'SAMEORIGIN\'
    YEAR_MONTH_FORMAT = u\'F Y\'


    You\'re seeing this error because you have DEBUG = True in your
    Django settings file. Change that to False, and Django will
    display a standard page generated by the handler for this status code.