· 5 years ago · Jan 17, 2020, 12:38 AM
1TypeError at /contract-periods/8/monthly-ppm-task-counts/
2int() argument must be a string, a bytes-like object or a number, not 'NoneType'
3
4Request Method: POST
5Request URL: http://18.219.219.254:8000/contract-periods/8/monthly-ppm-task-counts/
6Django Version: 2.2.5
7Python Executable: /home/deploy/apps/api/jt_env/bin/python3
8Python Version: 3.6.8
9Python Path: ['/home/deploy/apps/api/jaguar_tracks_api', '/home/deploy/apps/api/jt_env/bin', '/usr/lib/python36.zip', '/usr/lib/python3.6', '/usr/lib/python3.6/lib-dynload', '/home/deploy/apps/api/jt_env/lib/python3.6/site-packages']
10Server time: Fri, 17 Jan 2020 00:30:12 +0000
11Installed Applications:
12['django.contrib.admin',
13 'django.contrib.auth',
14 'django.contrib.contenttypes',
15 'django.contrib.sessions',
16 'django.contrib.messages',
17 'django.contrib.staticfiles',
18 'corsheaders',
19 'rest_framework',
20 'knox',
21 'django_rest_passwordreset',
22 'drf_yasg',
23 'storages',
24 'versatileimagefield',
25 'core']
26Installed Middleware:
27['corsheaders.middleware.CorsMiddleware',
28 'django.middleware.security.SecurityMiddleware',
29 'corsheaders.middleware.CorsPostCsrfMiddleware',
30 'django.contrib.sessions.middleware.SessionMiddleware',
31 'django.middleware.common.CommonMiddleware',
32 'django.middleware.csrf.CsrfViewMiddleware',
33 'django.contrib.auth.middleware.AuthenticationMiddleware',
34 'django.contrib.messages.middleware.MessageMiddleware',
35 'django.middleware.clickjacking.XFrameOptionsMiddleware']
36
37
38Traceback:
39
40File "/home/deploy/apps/api/jt_env/lib/python3.6/site-packages/django/core/handlers/exception.py" in inner
41 34. response = get_response(request)
42
43File "/home/deploy/apps/api/jt_env/lib/python3.6/site-packages/django/core/handlers/base.py" in _get_response
44 115. response = self.process_exception_by_middleware(e, request)
45
46File "/home/deploy/apps/api/jt_env/lib/python3.6/site-packages/django/core/handlers/base.py" in _get_response
47 113. response = wrapped_callback(request, *callback_args, **callback_kwargs)
48
49File "/home/deploy/apps/api/jt_env/lib/python3.6/site-packages/django/views/decorators/csrf.py" in wrapped_view
50 54. return view_func(*args, **kwargs)
51
52File "/home/deploy/apps/api/jt_env/lib/python3.6/site-packages/rest_framework/viewsets.py" in view
53 114. return self.dispatch(request, *args, **kwargs)
54
55File "/home/deploy/apps/api/jt_env/lib/python3.6/site-packages/rest_framework/views.py" in dispatch
56 505. response = self.handle_exception(exc)
57
58File "/home/deploy/apps/api/jt_env/lib/python3.6/site-packages/rest_framework/views.py" in handle_exception
59 465. self.raise_uncaught_exception(exc)
60
61File "/home/deploy/apps/api/jt_env/lib/python3.6/site-packages/rest_framework/views.py" in raise_uncaught_exception
62 476. raise exc
63
64File "/home/deploy/apps/api/jt_env/lib/python3.6/site-packages/rest_framework/views.py" in dispatch
65 502. response = handler(request, *args, **kwargs)
66
67File "/home/deploy/apps/api/jaguar_tracks_api/core/views/base_views.py" in create
68 91. self.perform_create(serializer)
69
70File "/home/deploy/apps/api/jt_env/lib/python3.6/site-packages/rest_framework/mixins.py" in perform_create
71 24. serializer.save()
72
73File "/home/deploy/apps/api/jt_env/lib/python3.6/site-packages/rest_framework/serializers.py" in save
74 213. self.instance = self.create(validated_data)
75
76File "/home/deploy/apps/api/jaguar_tracks_api/core/serializers/task_stat_serializers.py" in create
77 28. if validated_data['contract'].id != int(contract_id):
78
79Exception Type: TypeError at /contract-periods/8/monthly-ppm-task-counts/
80Exception Value: int() argument must be a string, a bytes-like object or a number, not 'NoneType'
81Request information:
82USER: harrytyldesley@purepattern.co.uk
83
84GET: No GET data
85
86POST: No POST data
87
88FILES: No FILES data
89
90COOKIES: No cookie data
91
92META:
93CONTENT_LENGTH = '165'
94CONTENT_TYPE = 'application/json;charset=UTF-8'
95HTTP_ACCEPT = 'application/json, text/plain, */*'
96HTTP_ACCEPT_ENCODING = 'gzip, deflate'
97HTTP_ACCEPT_LANGUAGE = 'en-US,en;q=0.9'
98HTTP_ACCESS_CONTROL_ALLOW_ORIGIN = '*'
99HTTP_AUTHORIZATION = 'Token 4cb9298a30ed417189c414785621e0929d6bcdc814d080ec3a41510f09960887'
100HTTP_CONNECTION = 'close'
101HTTP_HOST = '18.219.219.254:8000'
102HTTP_ORIGIN = 'http://localhost:3000'
103HTTP_REFERER = 'http://localhost:3000/ppm/1'
104HTTP_USER_AGENT = 'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.117 Mobile Safari/537.36'
105HTTP_X_FORWARDED_FOR = '188.27.14.170'
106HTTP_X_FORWARDED_PROTO = 'http'
107HTTP_X_REAL_IP = '188.27.14.170'
108PATH_INFO = '/contract-periods/8/monthly-ppm-task-counts/'
109QUERY_STRING = ''
110RAW_URI = '/contract-periods/8/monthly-ppm-task-counts/'
111REMOTE_ADDR = ''
112REQUEST_METHOD = 'POST'
113SCRIPT_NAME = ''
114SERVER_NAME = '18.219.219.254'
115SERVER_PORT = '8000'
116SERVER_PROTOCOL = 'HTTP/1.0'
117SERVER_SOFTWARE = 'gunicorn/19.9.0'
118gunicorn.socket = <socket.socket fd=10, family=AddressFamily.AF_UNIX, type=SocketKind.SOCK_STREAM, proto=0, laddr=/home/deploy/apps/api/jaguar_tracks_api_staging.sock>
119wsgi.errors = <gunicorn.http.wsgi.WSGIErrorsWrapper object at 0x7f3fb6ee7cf8>
120wsgi.file_wrapper = ''
121wsgi.input = <gunicorn.http.body.Body object at 0x7f3fb7009198>
122wsgi.multiprocess = False
123wsgi.multithread = False
124wsgi.run_once = False
125wsgi.url_scheme = 'http'
126wsgi.version = '(1, 0)'
127
128Settings:
129Using settings module config.settings.locals.staging
130ABSOLUTE_URL_OVERRIDES = {}
131ADMINS = []
132ALLOWED_HOSTS = "('18.219.219.254',)"
133APPEND_SLASH = True
134AUTHENTICATION_BACKENDS = ['django.contrib.auth.backends.ModelBackend']
135AUTH_PASSWORD_VALIDATORS = '********************'
136AUTH_USER_MODEL = 'core.Person'
137AWS_DEFAULT_ACL = None
138AWS_PRIVATE_MEDIA_LOCATION = 'media/private'
139AWS_PUBLIC_MEDIA_LOCATION = 'media/public'
140AWS_S3_CUSTOM_DOMAIN = 'jaguar-tracks-staging.s3.amazonaws.com'
141AWS_S3_OBJECT_PARAMETERS = {'CacheControl': 'max-age=86400'}
142AWS_S3_REGION_NAME = 'eu-west-2'
143AWS_S3_SIGNATURE_VERSION = '********************'
144AWS_STORAGE_BUCKET_NAME = 'jaguar-tracks-staging'
145BASE_DIR = '/home/deploy/apps/api/jaguar_tracks_api/config'
146CACHES = {'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}}
147CACHE_MIDDLEWARE_ALIAS = 'default'
148CACHE_MIDDLEWARE_KEY_PREFIX = '********************'
149CACHE_MIDDLEWARE_SECONDS = 600
150CORS_ALLOW_HEADERS = ['accept', 'accept-encoding', 'authorization', 'content-type', 'dnt', 'origin', 'user-agent', 'x-csrftoken', 'x-requested-with', 'access-control-allow-origin']
151CORS_ORIGIN_ALLOW_ALL = True
152CSRF_COOKIE_AGE = 31449600
153CSRF_COOKIE_DOMAIN = None
154CSRF_COOKIE_HTTPONLY = False
155CSRF_COOKIE_NAME = 'csrftoken'
156CSRF_COOKIE_PATH = '/'
157CSRF_COOKIE_SAMESITE = 'Lax'
158CSRF_COOKIE_SECURE = False
159CSRF_FAILURE_VIEW = 'django.views.csrf.csrf_failure'
160CSRF_HEADER_NAME = 'HTTP_X_CSRFTOKEN'
161CSRF_TRUSTED_ORIGINS = []
162CSRF_USE_SESSIONS = False
163DATABASES = {'default': {'ENGINE': 'django.db.backends.mysql', 'NAME': 'jaguar_tracks_api_staging', 'USER': 'jaguar_tracks_staging', 'PASSWORD': '********************', 'HOST': '127.0.0.1', 'PORT': '3306', 'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_MAX_AGE': 0, 'OPTIONS': {}, 'TIME_ZONE': None, 'TEST': {'CHARSET': None, 'COLLATION': None, 'NAME': None, 'MIRROR': None}}}
164DATABASE_ROUTERS = []
165DATA_UPLOAD_MAX_MEMORY_SIZE = 2621440
166DATA_UPLOAD_MAX_NUMBER_FIELDS = 1000
167DATETIME_FORMAT = 'N j, Y, P'
168DATETIME_INPUT_FORMATS = ['%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M:%S.%f', '%Y-%m-%d %H:%M', '%Y-%m-%d', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M:%S.%f', '%m/%d/%Y %H:%M', '%m/%d/%Y', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M:%S.%f', '%m/%d/%y %H:%M', '%m/%d/%y']
169DATE_FORMAT = 'N j, Y'
170DATE_INPUT_FORMATS = ['%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y']
171DEBUG = True
172DEBUG_PROPAGATE_EXCEPTIONS = False
173DECIMAL_SEPARATOR = '.'
174DEFAULT_CHARSET = 'utf-8'
175DEFAULT_CONTENT_TYPE = 'text/html'
176DEFAULT_EXCEPTION_REPORTER_FILTER = 'django.views.debug.SafeExceptionReporterFilter'
177DEFAULT_FILE_STORAGE = 'django.core.files.storage.FileSystemStorage'
178DEFAULT_FROM_EMAIL = 'webmaster@localhost'
179DEFAULT_INDEX_TABLESPACE = ''
180DEFAULT_TABLESPACE = ''
181DISALLOWED_USER_AGENTS = []
182EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'
183EMAIL_HOST = 'localhost'
184EMAIL_HOST_PASSWORD = '********************'
185EMAIL_HOST_USER = ''
186EMAIL_PORT = 1025
187EMAIL_SSL_CERTFILE = None
188EMAIL_SSL_KEYFILE = '********************'
189EMAIL_SUBJECT_PREFIX = '[Django] '
190EMAIL_TIMEOUT = None
191EMAIL_USE_LOCALTIME = False
192EMAIL_USE_SSL = False
193EMAIL_USE_TLS = False
194ENVIRONMENT = 'staging'
195FALLBACK_HOST = "('127.0.0.1', 'localhost')"
196FILE_CHARSET = 'utf-8'
197FILE_UPLOAD_DIRECTORY_PERMISSIONS = None
198FILE_UPLOAD_HANDLERS = ['django.core.files.uploadhandler.MemoryFileUploadHandler', 'django.core.files.uploadhandler.TemporaryFileUploadHandler']
199FILE_UPLOAD_MAX_MEMORY_SIZE = 2621440
200FILE_UPLOAD_PERMISSIONS = None
201FILE_UPLOAD_TEMP_DIR = None
202FIRST_DAY_OF_WEEK = 0
203FIXTURE_DIRS = []
204FORCE_SCRIPT_NAME = None
205FORMAT_MODULE_PATH = None
206FORM_RENDERER = 'django.forms.renderers.DjangoTemplates'
207HYPERLINKS = False
208IGNORABLE_404_URLS = []
209INSTALLED_APPS = ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'corsheaders', 'rest_framework', 'knox', 'django_rest_passwordreset', 'drf_yasg', 'storages', 'versatileimagefield', 'core']
210INTERNAL_IPS = []
211JT_LOGGER = '/home/deploy/apps/api/jaguar_tracks_api/jaguar_tracks.log'
212JT_LOG_LEVEL = 'INFO'
213LANGUAGES = [('af', 'Afrikaans'), ('ar', 'Arabic'), ('ast', 'Asturian'), ('az', 'Azerbaijani'), ('bg', 'Bulgarian'), ('be', 'Belarusian'), ('bn', 'Bengali'), ('br', 'Breton'), ('bs', 'Bosnian'), ('ca', 'Catalan'), ('cs', 'Czech'), ('cy', 'Welsh'), ('da', 'Danish'), ('de', 'German'), ('dsb', 'Lower Sorbian'), ('el', 'Greek'), ('en', 'English'), ('en-au', 'Australian English'), ('en-gb', 'British English'), ('eo', 'Esperanto'), ('es', 'Spanish'), ('es-ar', 'Argentinian Spanish'), ('es-co', 'Colombian Spanish'), ('es-mx', 'Mexican Spanish'), ('es-ni', 'Nicaraguan Spanish'), ('es-ve', 'Venezuelan Spanish'), ('et', 'Estonian'), ('eu', 'Basque'), ('fa', 'Persian'), ('fi', 'Finnish'), ('fr', 'French'), ('fy', 'Frisian'), ('ga', 'Irish'), ('gd', 'Scottish Gaelic'), ('gl', 'Galician'), ('he', 'Hebrew'), ('hi', 'Hindi'), ('hr', 'Croatian'), ('hsb', 'Upper Sorbian'), ('hu', 'Hungarian'), ('hy', 'Armenian'), ('ia', 'Interlingua'), ('id', 'Indonesian'), ('io', 'Ido'), ('is', 'Icelandic'), ('it', 'Italian'), ('ja', 'Japanese'), ('ka', 'Georgian'), ('kab', 'Kabyle'), ('kk', 'Kazakh'), ('km', 'Khmer'), ('kn', 'Kannada'), ('ko', 'Korean'), ('lb', 'Luxembourgish'), ('lt', 'Lithuanian'), ('lv', 'Latvian'), ('mk', 'Macedonian'), ('ml', 'Malayalam'), ('mn', 'Mongolian'), ('mr', 'Marathi'), ('my', 'Burmese'), ('nb', 'Norwegian Bokmål'), ('ne', 'Nepali'), ('nl', 'Dutch'), ('nn', 'Norwegian Nynorsk'), ('os', 'Ossetic'), ('pa', 'Punjabi'), ('pl', 'Polish'), ('pt', 'Portuguese'), ('pt-br', 'Brazilian Portuguese'), ('ro', 'Romanian'), ('ru', 'Russian'), ('sk', 'Slovak'), ('sl', 'Slovenian'), ('sq', 'Albanian'), ('sr', 'Serbian'), ('sr-latn', 'Serbian Latin'), ('sv', 'Swedish'), ('sw', 'Swahili'), ('ta', 'Tamil'), ('te', 'Telugu'), ('th', 'Thai'), ('tr', 'Turkish'), ('tt', 'Tatar'), ('udm', 'Udmurt'), ('uk', 'Ukrainian'), ('ur', 'Urdu'), ('vi', 'Vietnamese'), ('zh-hans', 'Simplified Chinese'), ('zh-hant', 'Traditional Chinese')]
214LANGUAGES_BIDI = ['he', 'ar', 'fa', 'ur']
215LANGUAGE_CODE = 'en-us'
216LANGUAGE_COOKIE_AGE = None
217LANGUAGE_COOKIE_DOMAIN = None
218LANGUAGE_COOKIE_NAME = 'django_language'
219LANGUAGE_COOKIE_PATH = '/'
220LOCALE_PATHS = []
221LOGGING = {'version': 1, 'disable_existing_loggers': False, 'handlers': {'general_jt_handler': {'level': 'INFO', 'class': 'logging.FileHandler', 'filename': '/home/deploy/apps/api/jaguar_tracks_api/jaguar_tracks.log'}, 'console': {'level': 'INFO', 'class': 'logging.StreamHandler'}}, 'loggers': {'jt': {'handlers': ['general_jt_handler', 'console'], 'level': 'INFO', 'propagate': True}}}
222LOGGING_CONFIG = 'logging.config.dictConfig'
223LOGIN_REDIRECT_URL = '/accounts/profile/'
224LOGIN_URL = '/accounts/login/'
225LOGOUT_REDIRECT_URL = None
226MANAGERS = []
227MEDIA_ROOT = ''
228MEDIA_URL = ''
229MESSAGE_STORAGE = 'django.contrib.messages.storage.fallback.FallbackStorage'
230MIDDLEWARE = ['corsheaders.middleware.CorsMiddleware', 'django.middleware.security.SecurityMiddleware', 'corsheaders.middleware.CorsPostCsrfMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware']
231MIGRATION_MODULES = {}
232MONTH_DAY_FORMAT = 'F j'
233NUMBER_GROUPING = 0
234PASSWORD_HASHERS = '********************'
235PASSWORD_RESET_TIMEOUT_DAYS = '********************'
236PREPEND_WWW = False
237PROJECT_ROOT = '/home/deploy/apps/api/jaguar_tracks_api'
238REST_FRAMEWORK = {'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.PageNumberPagination', 'PAGE_SIZE': 10000, 'DEFAULT_PERMISSION_CLASSES': ['rest_framework.permissions.IsAuthenticated'], 'DEFAULT_AUTHENTICATION_CLASSES': ('knox.auth.TokenAuthentication', 'rest_framework.authentication.SessionAuthentication'), 'DEFAULT_METADATA_CLASS': 'core.metadata.JTMetadata'}
239REST_KNOX = {'USER_SERIALIZER': 'core.serializers.PersonSerializer'}
240ROOT_URLCONF = 'config.urls'
241SECRET_KEY = '********************'
242SECURE_BROWSER_XSS_FILTER = False
243SECURE_CONTENT_TYPE_NOSNIFF = False
244SECURE_HSTS_INCLUDE_SUBDOMAINS = False
245SECURE_HSTS_PRELOAD = False
246SECURE_HSTS_SECONDS = 0
247SECURE_PROXY_SSL_HEADER = None
248SECURE_REDIRECT_EXEMPT = []
249SECURE_SSL_HOST = None
250SECURE_SSL_REDIRECT = False
251SERVER_EMAIL = 'root@localhost'
252SESSION_CACHE_ALIAS = 'default'
253SESSION_COOKIE_AGE = 1209600
254SESSION_COOKIE_DOMAIN = None
255SESSION_COOKIE_HTTPONLY = True
256SESSION_COOKIE_NAME = 'sessionid'
257SESSION_COOKIE_PATH = '/'
258SESSION_COOKIE_SAMESITE = 'Lax'
259SESSION_COOKIE_SECURE = False
260SESSION_ENGINE = 'django.contrib.sessions.backends.db'
261SESSION_EXPIRE_AT_BROWSER_CLOSE = False
262SESSION_FILE_PATH = None
263SESSION_SAVE_EVERY_REQUEST = False
264SESSION_SERIALIZER = 'django.contrib.sessions.serializers.JSONSerializer'
265SETTINGS_MODULE = 'config.settings.locals.staging'
266SHORT_DATETIME_FORMAT = 'm/d/Y P'
267SHORT_DATE_FORMAT = 'm/d/Y'
268SIGNING_BACKEND = 'django.core.signing.TimestampSigner'
269SILENCED_SYSTEM_CHECKS = []
270STATICFILES_DIRS = []
271STATICFILES_FINDERS = ['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder']
272STATICFILES_STORAGE = 'django.contrib.staticfiles.storage.StaticFilesStorage'
273STATIC_ROOT = '/home/deploy/apps/api/static/'
274STATIC_URL = '/static/'
275TEMPLATES = [{'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [], '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']}}]
276TEST_NON_SERIALIZED_APPS = []
277TEST_RUNNER = 'django.test.runner.DiscoverRunner'
278THOUSAND_SEPARATOR = ','
279TIME_FORMAT = 'P'
280TIME_INPUT_FORMATS = ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M']
281TIME_ZONE = 'UTC'
282USE_I18N = True
283USE_L10N = True
284USE_THOUSAND_SEPARATOR = False
285USE_TZ = True
286USE_X_FORWARDED_HOST = False
287USE_X_FORWARDED_PORT = False
288VERSATILEIMAGEFIELD_RENDITION_KEY_SETS = '********************'
289VERSATILEIMAGEFIELD_SETTINGS = {'cache_length': 2592000, 'cache_name': 'versatileimagefield_cache', 'jpeg_resize_quality': 80, 'sized_directory_name': '__sized__', 'filtered_directory_name': '__filtered__', 'placeholder_directory_name': '__placeholder__', 'create_images_on_demand': True, 'image_key_post_processor': '********************', 'progressive_jpeg': False}
290WSGI_APPLICATION = 'config.wsgi.application'
291X_FRAME_OPTIONS = 'SAMEORIGIN'
292YEAR_MONTH_FORMAT = 'F Y'
293
294
295You're seeing this error because you have DEBUG = True in your
296Django settings file. Change that to False, and Django will
297display a standard page generated by the handler for this status code.