'NoneType' object has no attribute 'find'
Request Method: | GET |
---|---|
Request URL: | https://www.starozitny-nabytok.eu/__currency__/set_currency/?currency=ISK |
Django Version: | 1.5.4 |
Exception Type: | AttributeError |
Exception Value: | 'NoneType' object has no attribute 'find' |
Exception Location: | /usr/lib/python2.7/urlparse.py in urlsplit, line 182 |
Python Executable: | /usr/local/bin/uwsgi |
Python Version: | 2.7.12 |
Python Path: | ['./project/apps', '.', '', '/var/www/anticonabytek.cz/env/lib/python2.7', '/var/www/anticonabytek.cz/env/lib/python2.7/plat-linux2', '/var/www/anticonabytek.cz/env/lib/python2.7/lib-tk', '/var/www/anticonabytek.cz/env/lib/python2.7/lib-old', '/var/www/anticonabytek.cz/env/lib/python2.7/lib-dynload', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-linux2', '/usr/lib/python2.7/lib-tk', '/var/www/anticonabytek.cz/env/local/lib/python2.7/site-packages', '/var/www/anticonabytek.cz/env/lib/python2.7/site-packages'] |
Server time: | št, 28 Mar 2024 19:58:24 +0100 |
/var/www/anticonabytek.cz/env/local/lib/python2.7/site-packages/django/core/handlers/base.py
in get_response
for middleware_method in self._view_middleware:
response = middleware_method(request, callback, callback_args, callback_kwargs)
if response:
break
if response is None:
try:
response = callback(request, *callback_args, **callback_kwargs)...
except Exception as e:
# If the view raised an exception, run it through exception
# middleware, and if the exception middleware returns a
# response, use that. Otherwise, reraise the exception.
for middleware_method in self._exception_middleware:
response = middleware_method(request, e)
Variable | Value |
---|---|
e | AttributeError("'NoneType' object has no attribute 'find'",) |
callback_args | () |
resolver_match | ResolverMatch(func=<function set_currency at 0x7f81fbcff140>, args=(), kwargs={}, url_name='set', app_name='None', namespace='currencies') |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7f81fe286d50>> |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7f8201a61590> |
request | "<WSGIRequest\npath:/__currency__/set_currency/,\nGET:<QueryDict: {u'currency': [u'ISK']}>,\nPOST:<QueryDict: {}>,\nCOOKIES:{},\nMETA:{'CONTENT_LENGTH': '',\n 'CONTENT_TYPE': '',\n u'CSRF_COOKIE': u'bSP6U5tRzeEeOpCStHkXyZKEfZLWoeBO',\n 'DOCUMENT_ROOT': '/usr/share/nginx/html',\n 'HTTPS': 'on',\n 'HTTP_ACCEPT': '*/*',\n 'HTTP_HOST': 'www.starozitny-nabytok.eu',\n 'HTTP_USER_AGENT': 'claudebot',\n 'PATH_INFO': u'/__currency__/set_currency/',\n 'QUERY_STRING': 'currency=ISK',\n 'REMOTE_ADDR': '54.226.226.30',\n 'REMOTE_PORT': '52338',\n 'REQUEST_METHOD': 'GET',\n 'REQUEST_SCHEME': 'https',\n 'REQUEST_URI': '/__currency__/set_currency/?currency=ISK',\n u'SCRIPT_NAME': u'',\n 'SERVER_NAME': 'www.starozitny-nabytok.eu',\n 'SERVER_PORT': '443',\n 'SERVER_PROTOCOL': 'HTTP/1.1',\n 'uwsgi.node': 'vps',\n 'uwsgi.version': '2.0.1',\n 'wsgi.errors': <open file 'wsgi_errors', mode 'w' at 0x7f81fe378a50>,\n 'wsgi.file_wrapper': <built-in function uwsgi_sendfile>,\n 'wsgi.input': <uwsgi._Input object at 0x7f81fc1d50d8>,\n 'wsgi.multiprocess': False,\n 'wsgi.multithread': False,\n 'wsgi.run_once': False,\n 'wsgi.url_scheme': 'https',\n 'wsgi.version': (1, 0)}>" |
callback | <function set_currency at 0x7f81fbcff140> |
resolver | <RegexURLResolver 'project.urls' (None:None) ^/> |
callback_kwargs | {} |
response | None |
urlconf | 'project.urls' |
./apps/currencies/views.py
in set_currency
def set_currency(request):
currency = request.GET.get("currency", "")
if currency == 'CZK':
request.session["currency"] = 'CZK'
if Currency.objects.filter(code=currency).exists():
request.session["currency"] = currency
return HttpResponseRedirect(request.META.get("HTTP_REFERER"))...
Variable | Value |
---|---|
currency | u'ISK' |
request | "<WSGIRequest\npath:/__currency__/set_currency/,\nGET:<QueryDict: {u'currency': [u'ISK']}>,\nPOST:<QueryDict: {}>,\nCOOKIES:{},\nMETA:{'CONTENT_LENGTH': '',\n 'CONTENT_TYPE': '',\n u'CSRF_COOKIE': u'bSP6U5tRzeEeOpCStHkXyZKEfZLWoeBO',\n 'DOCUMENT_ROOT': '/usr/share/nginx/html',\n 'HTTPS': 'on',\n 'HTTP_ACCEPT': '*/*',\n 'HTTP_HOST': 'www.starozitny-nabytok.eu',\n 'HTTP_USER_AGENT': 'claudebot',\n 'PATH_INFO': u'/__currency__/set_currency/',\n 'QUERY_STRING': 'currency=ISK',\n 'REMOTE_ADDR': '54.226.226.30',\n 'REMOTE_PORT': '52338',\n 'REQUEST_METHOD': 'GET',\n 'REQUEST_SCHEME': 'https',\n 'REQUEST_URI': '/__currency__/set_currency/?currency=ISK',\n u'SCRIPT_NAME': u'',\n 'SERVER_NAME': 'www.starozitny-nabytok.eu',\n 'SERVER_PORT': '443',\n 'SERVER_PROTOCOL': 'HTTP/1.1',\n 'uwsgi.node': 'vps',\n 'uwsgi.version': '2.0.1',\n 'wsgi.errors': <open file 'wsgi_errors', mode 'w' at 0x7f81fe378a50>,\n 'wsgi.file_wrapper': <built-in function uwsgi_sendfile>,\n 'wsgi.input': <uwsgi._Input object at 0x7f81fc1d50d8>,\n 'wsgi.multiprocess': False,\n 'wsgi.multithread': False,\n 'wsgi.run_once': False,\n 'wsgi.url_scheme': 'https',\n 'wsgi.version': (1, 0)}>" |
/var/www/anticonabytek.cz/env/local/lib/python2.7/site-packages/django/http/response.py
in __init__
self.streaming_content = [content]
class HttpResponseRedirectBase(HttpResponse):
allowed_schemes = ['http', 'https', 'ftp']
def __init__(self, redirect_to, *args, **kwargs):
parsed = urlparse(redirect_to)...
if parsed.scheme and parsed.scheme not in self.allowed_schemes:
raise SuspiciousOperation("Unsafe redirect to URL with protocol '%s'" % parsed.scheme)
super(HttpResponseRedirectBase, self).__init__(*args, **kwargs)
self['Location'] = iri_to_uri(redirect_to)
Variable | Value |
---|---|
kwargs | {} |
self | <django.http.response.HttpResponseRedirect object at 0x7f81fbdcb110> |
args | () |
redirect_to | None |
/usr/lib/python2.7/urlparse.py
in urlparse
def urlparse(url, scheme='', allow_fragments=True):
"""Parse a URL into 6 components:
<scheme>://<netloc>/<path>;<params>?<query>#<fragment>
Return a 6-tuple: (scheme, netloc, path, params, query, fragment).
Note that we don't break the components up in smaller bits
(e.g. netloc is a single string) and we don't expand % escapes."""
tuple = urlsplit(url, scheme, allow_fragments)...
scheme, netloc, url, query, fragment = tuple
if scheme in uses_params and ';' in url:
url, params = _splitparams(url)
else:
params = ''
return ParseResult(scheme, netloc, url, params, query, fragment)
Variable | Value |
---|---|
url | None |
scheme | '' |
allow_fragments | True |
/usr/lib/python2.7/urlparse.py
in urlsplit
key = url, scheme, allow_fragments, type(url), type(scheme)
cached = _parse_cache.get(key, None)
if cached:
return cached
if len(_parse_cache) >= MAX_CACHE_SIZE: # avoid runaway growth
clear_cache()
netloc = query = fragment = ''
i = url.find(':')...
if i > 0:
if url[:i] == 'http': # optimize the common case
scheme = url[:i].lower()
url = url[i+1:]
if url[:2] == '//':
netloc, url = _splitnetloc(url, 2)
Variable | Value |
---|---|
fragment | '' |
netloc | '' |
allow_fragments | True |
cached | None |
url | None |
key | (None, '', True, <type 'NoneType'>, <type 'str'>) |
query | '' |
scheme | '' |
Variable | Value |
---|---|
currency | u'ISK' |
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
wsgi.multiprocess | False |
SCRIPT_NAME | u'' |
REQUEST_METHOD | 'GET' |
PATH_INFO | u'/__currency__/set_currency/' |
SERVER_PROTOCOL | 'HTTP/1.1' |
QUERY_STRING | 'currency=ISK' |
CONTENT_LENGTH | '' |
HTTP_USER_AGENT | 'claudebot' |
SERVER_NAME | 'www.starozitny-nabytok.eu' |
REMOTE_ADDR | '54.226.226.30' |
wsgi.url_scheme | 'https' |
SERVER_PORT | '443' |
uwsgi.node | 'vps' |
DOCUMENT_ROOT | '/usr/share/nginx/html' |
wsgi.input | <uwsgi._Input object at 0x7f81fc1d50d8> |
HTTP_HOST | 'www.starozitny-nabytok.eu' |
HTTPS | 'on' |
wsgi.multithread | False |
REQUEST_URI | '/__currency__/set_currency/?currency=ISK' |
HTTP_ACCEPT | '*/*' |
wsgi.version | (1, 0) |
wsgi.run_once | False |
wsgi.errors | <open file 'wsgi_errors', mode 'w' at 0x7f81fe378a50> |
REMOTE_PORT | '52338' |
REQUEST_SCHEME | 'https' |
uwsgi.version | '2.0.1' |
CONTENT_TYPE | '' |
wsgi.file_wrapper | '' |
CSRF_COOKIE | u'bSP6U5tRzeEeOpCStHkXyZKEfZLWoeBO' |
project.settings
Setting | Value |
---|---|
USE_L10N | True |
USE_THOUSAND_SEPARATOR | False |
CSRF_COOKIE_SECURE | False |
LANGUAGE_CODE | 'cs' |
ROOT_URLCONF | 'project.urls' |
MANAGERS | () |
DEFAULT_CHARSET | 'utf-8' |
SESSION_SERIALIZER | 'django.contrib.sessions.serializers.PickleSerializer' |
STATIC_ROOT | './project/../../public/static/' |
CAPTCHA_FOREGROUND_COLOR | '#3F3F63' |
ALLOWED_HOSTS | ['*'] |
CRISPY_TEMPLATE_PACK | 'bootstrap3' |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
EMAIL_SUBJECT_PREFIX | '[Django] ' |
SEND_BROKEN_LINK_EMAILS | False |
STATICFILES_FINDERS | ('django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder') |
SESSION_CACHE_ALIAS | 'default' |
SESSION_COOKIE_DOMAIN | None |
SESSION_COOKIE_NAME | 'sessionid' |
ADMIN_FOR | () |
TIME_INPUT_FORMATS | ('%H:%M:%S', '%H:%M') |
DATABASES | {'default': {'ENGINE': 'django.db.backends.mysql', 'HOST': '', 'NAME': 'anticonabytekcz', 'OPTIONS': {}, 'PASSWORD': u'********************', 'PORT': '', 'TEST_CHARSET': None, 'TEST_COLLATION': None, 'TEST_MIRROR': None, 'TEST_NAME': None, 'TIME_ZONE': 'UTC', 'USER': 'anticonabytekcz'}} |
FILE_UPLOAD_PERMISSIONS | 511 |
FILE_UPLOAD_HANDLERS | ('django.core.files.uploadhandler.MemoryFileUploadHandler', 'django.core.files.uploadhandler.TemporaryFileUploadHandler') |
TEMPLATE_CONTEXT_PROCESSORS | ('django.contrib.auth.context_processors.auth', 'django.core.context_processors.debug', 'django.core.context_processors.i18n', 'django.core.context_processors.media', 'django.core.context_processors.static', 'django.core.context_processors.tz', 'django.contrib.messages.context_processors.messages', 'django.core.context_processors.request', 'apps.livesettings.context_processors.context_livesettings', 'apps.pages.context_processors.page_list', 'apps.misc.context_processors.context_settings', 'apps.products.context_processors.context_product_list', 'apps.products.context_processors.context_category_list', 'apps.articles.context_processors.context_articles', 'apps.currencies.context_processors.currency_list') |
DEFAULT_CONTENT_TYPE | 'text/html' |
APPEND_SLASH | True |
FIRST_DAY_OF_WEEK | 0 |
DATABASE_ROUTERS | [] |
YEAR_MONTH_FORMAT | 'F Y' |
STATICFILES_STORAGE | 'django.contrib.staticfiles.storage.StaticFilesStorage' |
CACHES | {'default': {'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache', 'KEY_PREFIX': u'********************', 'LOCATION': '127.0.0.1:11211'}} |
SERVER_EMAIL | 'root@localhost' |
SESSION_COOKIE_PATH | '/' |
MIDDLEWARE_CLASSES | ('django.middleware.common.CommonMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'apps.misc.dynamicsite.DynamicSiteIDMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.contrib.redirects.middleware.RedirectFallbackMiddleware', 'apps.pages.middleware.PageFallbackMiddleware') |
USE_I18N | True |
THOUSAND_SEPARATOR | ',' |
SECRET_KEY | u'********************' |
LANGUAGE_COOKIE_NAME | 'django_language' |
DEFAULT_INDEX_TABLESPACE | '' |
TRANSACTIONS_MANAGED | False |
LOGGING_CONFIG | 'django.utils.log.dictConfig' |
TEMPLATE_LOADERS | ('django.template.loaders.filesystem.Loader', 'django.template.loaders.app_directories.Loader') |
WSGI_APPLICATION | 'project.wsgi.application' |
TEMPLATE_DEBUG | True |
X_FRAME_OPTIONS | 'SAMEORIGIN' |
AUTHENTICATION_BACKENDS | ('django.contrib.auth.backends.ModelBackend',) |
FORCE_SCRIPT_NAME | None |
USE_X_FORWARDED_HOST | False |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SESSION_COOKIE_SECURE | False |
CSRF_COOKIE_DOMAIN | None |
FILE_CHARSET | 'utf-8' |
DEBUG | True |
SESSION_FILE_PATH | None |
DEFAULT_FILE_STORAGE | 'apps.misc.storage.ASCIIFileSystemStorage' |
INSTALLED_APPS | ('django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.admin', 'django.contrib.redirects', 'apps.ajaxforms', 'apps.profiles', 'apps.products', 'apps.currencies', 'apps.articles', 'apps.dashboard', 'apps.filebrowsers', 'apps.livesettings', 'apps.misc', 'apps.newsletters', 'apps.pages', 'apps.searches', 'apps.talks', 'apps.privacy', 'south', 'easy_thumbnails', 'crispy_forms', 'tastypie', 'django_gravatar', 'sizefield', 'post_office', 'captcha', 'modeltranslation', 'wkhtmltopdf') |
LANGUAGES | (('cs', <django.utils.functional.__proxy__ object at 0x7f81fe2f8e90>), ('de', <django.utils.functional.__proxy__ object at 0x7f81fe2f8ed0>), ('ru', <django.utils.functional.__proxy__ object at 0x7f81fe2f8f10>), ('en', <django.utils.functional.__proxy__ object at 0x7f81fe2f8f50>), ('sk', <django.utils.functional.__proxy__ object at 0x7f81fe2f8f90>)) |
SHOW_TOOLBAR_CALLBACK | '' |
COMMENTS_ALLOW_PROFANITIES | False |
STATICFILES_DIRS | ('./project/../../public/project_static/',) |
PREPEND_WWW | True |
SECURE_PROXY_SSL_HEADER | None |
SESSION_COOKIE_HTTPONLY | True |
DEBUG_PROPAGATE_EXCEPTIONS | False |
MONTH_DAY_FORMAT | 'F j' |
LOGIN_URL | 'profiles:login' |
SESSION_EXPIRE_AT_BROWSER_CLOSE | False |
TIME_FORMAT | 'P' |
AUTH_USER_MODEL | 'profiles.CustomUser' |
DATE_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') |
PRODUCTS_LOAD_DIR | ('./project/../../public/media/filebrowser/new_products/',) |
CSRF_COOKIE_NAME | 'csrftoken' |
EMAIL_HOST_PASSWORD | u'********************' |
PASSWORD_RESET_TIMEOUT_DAYS | u'********************' |
CACHE_MIDDLEWARE_ALIAS | 'default' |
SESSION_SAVE_EVERY_REQUEST | False |
NUMBER_GROUPING | 0 |
ELFINDER | {'URL': '/media/filebrowser/', 'root': './project/../../public/media/filebrowser/'} |
CSRF_FAILURE_VIEW | 'django.views.csrf.csrf_failure' |
CSRF_COOKIE_PATH | '/' |
LOGIN_REDIRECT_URL | 'profiles:dashboard' |
CREATE_SITES_AUTOMATICALLY | True |
DECIMAL_SEPARATOR | '.' |
IGNORABLE_404_URLS | () |
LOCALE_PATHS | ('./project/../locale/',) |
MODELTRANSLATION_DEFAULT_LANGUAGE | 'cs' |
TEMPLATE_STRING_IF_INVALID | '' |
LOGOUT_URL | '/accounts/logout/' |
EMAIL_USE_TLS | False |
FIXTURE_DIRS | () |
EMAIL_HOST | 'localhost' |
DATE_FORMAT | 'N j, Y' |
MEDIA_ROOT | './project/../../public/media/' |
DEFAULT_EXCEPTION_REPORTER_FILTER | 'django.views.debug.SafeExceptionReporterFilter' |
ADMINS | () |
FORMAT_MODULE_PATH | None |
DEFAULT_FROM_EMAIL | 'info@anticoonabytek.cz' |
MEDIA_URL | '/media/' |
DATETIME_FORMAT | 'N j, Y, P' |
TEMPLATE_DIRS | ('./project/../templates/',) |
THUMBNAIL_BASEDIR | 'thumb' |
SITE_ID | 7L |
DISALLOWED_USER_AGENTS | () |
ALLOWED_INCLUDE_ROOTS | () |
LOGGING | {'disable_existing_loggers': False, 'filters': {'require_debug_false': {'()': 'django.utils.log.RequireDebugFalse'}}, 'handlers': {'mail_admins': {'class': 'django.utils.log.AdminEmailHandler', 'filters': ['require_debug_false'], 'level': 'ERROR'}}, 'loggers': {'django.request': {'handlers': ['mail_admins'], 'level': 'ERROR', 'propagate': True}}, 'version': 1} |
PROJECT_DIR | './project' |
TEST_RUNNER | 'django.test.simple.DjangoTestSuiteRunner' |
SHORT_DATE_FORMAT | 'm/d/Y' |
CACHE_MIDDLEWARE_KEY_PREFIX | u'********************' |
TIME_ZONE | 'Europe/Prague' |
SOUTH_MIGRATION_MODULES | {'post_office': 'post_office.south_migrations'} |
FILE_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
CAPTCHA_FONT_SIZE | 35 |
EMAIL_BACKEND | 'django.core.mail.backends.smtp.EmailBackend' |
DEFAULT_TABLESPACE | '' |
DATETIME_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') |
SESSION_COOKIE_AGE | 1209600 |
SETTINGS_MODULE | 'project.settings' |
USE_ETAGS | False |
LANGUAGES_BIDI | ('he', 'ar', 'fa') |
FILE_UPLOAD_TEMP_DIR | None |
INTERNAL_IPS | () |
STATIC_URL | '/static/' |
EMAIL_PORT | 25 |
SESSION_ENGINE | 'django.contrib.sessions.backends.db' |
USE_TZ | True |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
PASSWORD_HASHERS | u'********************' |
ABSOLUTE_URL_OVERRIDES | {} |
CACHE_MIDDLEWARE_SECONDS | 600 |
DEBUG_TOOLBAR_CONFIG | {'SHOW_TOOLBAR_CALLBACK': <function show_toolbar at 0x7f81fe309a28>} |
MODELTRANSLATION_AUTO_POPULATE | True |
EMAIL_HOST_USER | '' |
PROFANITIES_LIST | u'********************' |
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 500 page.