python - 'NoneType' object has no attribute '__getitem__' -
while trying access user profile in admin panel, have started encountering issue.
typeerror @ /admin/users/userprofile/2/ 'nonetype' object has no attribute '__getitem__'
it started happening after integrated django storages in application utilize amazon s3 storage service. can't figure out what's conflicting here. traceback seems suggest issue sorl thubmnails i'm using user image field.
here settings.py
default_file_storage = 'storages.backends.s3boto.s3botostorage' staticfiles_storage = 'storages.backends.s3boto.s3botostorage' aws_access_key_id = 'my-access-key' aws_secret_access_key = 'my-secret-key' aws_storage_bucket_name = 'my-bucket-name' static_url = 'http://' + aws_storage_bucket_name + '.s3.amazonaws.com/' admin_media_prefix = static_url + 'admin/'
here user model
from sorl.thumbnail import imagefield class userprofile(abstractbaseuser): email = models.emailfield(max_length=255, unique=true) username = models.charfield(max_length=100, unique=true) name = models.charfield(max_length=255) location = models.charfield(max_length=255, blank=true, null=true) website = models.charfield(max_length=255, blank=true, null=true) image = imagefield(upload_to='media', blank=true, null=true) points = models.positiveintegerfield(default=0) added_on = models.datetimefield(auto_now_add=true) is_active = models.booleanfield(default=true) is_admin = models.booleanfield(default=false)
here traceback of issue
environment: request method: request url: http://www.localhost/admin/users/userprofile/2/ django version: 1.6.5 python version: 2.7.3 installed applications: ('django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.sites', 'south', 'rest_framework', 'django_extensions', 'debug_toolbar', 'django_jinja', 'django_statsd', 'django_user_agents', 'alphafilter', 'redis_status', 'subdomains', 'pipeline', 'allauth', 'allauth.account', 'allauth.socialaccount', 'allauth.socialaccount.providers.facebook', 'allauth.socialaccount.providers.twitter', 'allauth.socialaccount.providers.google', 'sorl.thumbnail', 'storages', 'brands', 'cachier', 'categories', 'crawler', 'deals', 'features', 'facets', 'products', 'stores', 'users', 'util') installed middleware: ('buyingiq.middleware.timermiddleware', 'debug_toolbar.middleware.debugtoolbarmiddleware', 'django.contrib.sessions.middleware.sessionmiddleware', 'subdomains.middleware.subdomainurlroutingmiddleware', 'django.middleware.common.commonmiddleware', 'django.middleware.csrf.csrfviewmiddleware', 'django.contrib.auth.middleware.authenticationmiddleware', 'django.contrib.messages.middleware.messagemiddleware', 'django.middleware.clickjacking.xframeoptionsmiddleware', 'django_user_agents.middleware.useragentmiddleware', 'buyingiq.middleware.visitormiddleware') template error: in template /home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/contrib/admin/templates/admin/includes/fieldset.html, error @ line 19 'nonetype' object has no attribute '__getitem__' 9 : {% field in line %} 10 : <div{% if not line.fields|length_is:'1' %} class="field-box{% if field.field.name %} field-{{ field.field.name }}{% endif %}{% if not field.is_readonly , field.errors %} errors{% endif %}"{% elif field.is_checkbox %} class="checkbox-row"{% endif %}> 11 : {% if not line.fields|length_is:'1' , not field.is_readonly %}{{ field.errors }}{% endif %} 12 : {% if field.is_checkbox %} 13 : {{ field.field }}{{ field.label_tag }} 14 : {% else %} 15 : {{ field.label_tag }} 16 : {% if field.is_readonly %} 17 : <p>{{ field.contents|linebreaksbr }}</p> 18 : {% else %} 19 : {{ field.field }} 20 : {% endif %} 21 : {% endif %} 22 : {% if field.field.help_text %} 23 : <p class="help">{{ field.field.help_text|safe }}</p> 24 : {% endif %} 25 : </div> 26 : {% endfor %} 27 : </div> 28 : {% endfor %} 29 : </fieldset> traceback: file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response 137. response = response.render() file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/response.py" in render 105. self.content = self.rendered_content file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/response.py" in rendered_content 82. content = template.render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/base.py" in render 140. homecoming self._render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/test/utils.py" in instrumented_test_render 85. homecoming self.nodelist.render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/base.py" in render 840. bit = self.render_node(node, context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/debug.py" in render_node 78. homecoming node.render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/loader_tags.py" in render 123. homecoming compiled_parent._render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/test/utils.py" in instrumented_test_render 85. homecoming self.nodelist.render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/base.py" in render 840. bit = self.render_node(node, context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/debug.py" in render_node 78. homecoming node.render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/loader_tags.py" in render 123. homecoming compiled_parent._render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/test/utils.py" in instrumented_test_render 85. homecoming self.nodelist.render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/base.py" in render 840. bit = self.render_node(node, context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/debug.py" in render_node 78. homecoming node.render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/loader_tags.py" in render 62. result = block.nodelist.render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/base.py" in render 840. bit = self.render_node(node, context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/debug.py" in render_node 78. homecoming node.render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/loader_tags.py" in render 62. result = block.nodelist.render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/base.py" in render 840. bit = self.render_node(node, context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/debug.py" in render_node 78. homecoming node.render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/defaulttags.py" in render 196. nodelist.append(node.render(context)) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/loader_tags.py" in render 155. homecoming self.render_template(self.template, context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/loader_tags.py" in render_template 137. output = template.render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/base.py" in render 140. homecoming self._render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/test/utils.py" in instrumented_test_render 85. homecoming self.nodelist.render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/base.py" in render 840. bit = self.render_node(node, context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/debug.py" in render_node 78. homecoming node.render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/defaulttags.py" in render 196. nodelist.append(node.render(context)) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/defaulttags.py" in render 196. nodelist.append(node.render(context)) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/defaulttags.py" in render 305. homecoming nodelist.render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/base.py" in render 840. bit = self.render_node(node, context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/debug.py" in render_node 78. homecoming node.render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/defaulttags.py" in render 305. homecoming nodelist.render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/base.py" in render 840. bit = self.render_node(node, context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/debug.py" in render_node 78. homecoming node.render(context) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/template/debug.py" in render 91. output = force_text(output) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/utils/encoding.py" in force_text 100. s = s.__unicode__() file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/forms/forms.py" in __str__ 425. homecoming self.as_widget() file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/django/forms/forms.py" in as_widget 475. homecoming widget.render(name, self.value(), attrs=attrs) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/sorl/thumbnail/admin/current.py" in render 34. ) % (mini.width, value.url, mini.url, output) file "/home/jaskaran/coding/buyingiq/buyingiq/venv/local/lib/python2.7/site-packages/sorl/thumbnail/images.py" in width 51. homecoming self.size[0] exception type: typeerror @ /admin/users/userprofile/2/ exception value: 'nonetype' object has no attribute '__getitem__'
the error caused missing image file image attribute. check file path userprofile.image of user (id = 2).
it re-create code , database 1 location location, didn't re-create associated image files.
python django amazon-s3 sorl-thumbnail
No comments:
Post a Comment