首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >升级到django 1.7后访问admin中的模型细节时出错

升级到django 1.7后访问admin中的模型细节时出错
EN

Stack Overflow用户
提问于 2014-10-19 22:24:08
回答 2查看 410关注 0票数 0

升级到django 1.7之后,在编辑管理页面中的模型(IE单击单个模型的条目以访问其详细信息)时,我得到以下跟踪信息:

在迁移之后,这个应用程序和管理程序似乎在工作,直到我开始这么做。很明显(?)我没有东西的管理端的测试,所以我只有当我尝试它时才发现它。

知道该怎么做才能纠正吗?我是否有一些从1.6中遗留下来的不受支持的旧模板,或者我没有更新一些东西来正确地处理一个新的模板?

代码语言:javascript
复制
Exception Type: AttributeError at /admin/cmh_server/module/7/
In template /Users/mgregory/Documents/virtualenvs/cm_central/lib/python2.7/site-packages/django/contrib/admin/templates/admin/change_form.html, 
error at line 45
'AdminErrorList' object has no attribute 'data'
35      {% if has_absolute_url %}<li><a href="{{ absolute_url }}" class="viewsitelink">{% trans "View on site" %}</a></li>{% endif%}
36      {% endblock %}
37    </ul>
38  {% endif %}{% endif %}
39  {% endblock %}
40  <form {% if has_file_field %}enctype="multipart/form-data" {% endif %}action="{{ form_url }}" method="post" id="{{ opts.model_name }}_form" novalidate>{% csrf_token %}{% block form_top %}{% endblock %}
41  <div>
42  {% if is_popup %}<input type="hidden" name="{{ is_popup_var }}" value="1" />{% endif %}
43  {% if to_field %}<input type="hidden" name="{{ to_field_var }}" value="{{ to_field }}" />{% endif %}
44  {% if save_on_top %}{% block submit_buttons_top %}{% submit_row %}{% endblock %}{% endif %}
45  {% if errors %}
46      <p class="errornote">
47      {% if errors|length == 1 %}{% trans "Please correct the error below." %}{% else %}{% trans "Please correct the errors below." %}{% endif %}
48      </p>
49      {{ adminform.form.non_field_errors }}
50  {% endif %}
51  

完整的回溯(希望我能贴出这个“崩溃”!)

代码语言:javascript
复制
File "/Users/mgregory/Documents/virtualenvs/cm_central/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
  137.                 response = response.render()
File "/Users/mgregory/Documents/virtualenvs/cm_central/lib/python2.7/site-packages/django/template/response.py" in render
  103.             self.content = self.rendered_content
File "/Users/mgregory/Documents/virtualenvs/cm_central/lib/python2.7/site-packages/django/template/response.py" in rendered_content
  80.         content = template.render(context)
File "/Users/mgregory/Documents/virtualenvs/cm_central/lib/python2.7/site-packages/django/template/base.py" in render
  148.             return self._render(context)
File "/Users/mgregory/Documents/virtualenvs/cm_central/lib/python2.7/site-packages/django/template/base.py" in _render
  142.         return self.nodelist.render(context)
File "/Users/mgregory/Documents/virtualenvs/cm_central/lib/python2.7/site-packages/django/template/base.py" in render
  844.                 bit = self.render_node(node, context)
File "/Users/mgregory/Documents/virtualenvs/cm_central/lib/python2.7/site-packages/django/template/debug.py" in render_node
  80.             return node.render(context)
File "/Users/mgregory/Documents/virtualenvs/cm_central/lib/python2.7/site-packages/django/template/loader_tags.py" in render
  126.         return compiled_parent._render(context)
File "/Users/mgregory/Documents/virtualenvs/cm_central/lib/python2.7/site-packages/django/template/base.py" in _render
  142.         return self.nodelist.render(context)
File "/Users/mgregory/Documents/virtualenvs/cm_central/lib/python2.7/site-packages/django/template/base.py" in render
  844.                 bit = self.render_node(node, context)
File "/Users/mgregory/Documents/virtualenvs/cm_central/lib/python2.7/site-packages/django/template/debug.py" in render_node
  80.             return node.render(context)
File "/Users/mgregory/Documents/virtualenvs/cm_central/lib/python2.7/site-packages/django/template/loader_tags.py" in render
  126.         return compiled_parent._render(context)
File "/Users/mgregory/Documents/virtualenvs/cm_central/lib/python2.7/site-packages/django/template/base.py" in _render
  142.         return self.nodelist.render(context)
File "/Users/mgregory/Documents/virtualenvs/cm_central/lib/python2.7/site-packages/django/template/base.py" in render
  844.                 bit = self.render_node(node, context)
File "/Users/mgregory/Documents/virtualenvs/cm_central/lib/python2.7/site-packages/django/template/debug.py" in render_node
  80.             return node.render(context)
File "/Users/mgregory/Documents/virtualenvs/cm_central/lib/python2.7/site-packages/django/template/loader_tags.py" in render
  65.                 result = block.nodelist.render(context)
File "/Users/mgregory/Documents/virtualenvs/cm_central/lib/python2.7/site-packages/django/template/base.py" in render
  844.                 bit = self.render_node(node, context)
File "/Users/mgregory/Documents/virtualenvs/cm_central/lib/python2.7/site-packages/django/template/debug.py" in render_node
  80.             return node.render(context)
File "/Users/mgregory/Documents/virtualenvs/cm_central/lib/python2.7/site-packages/django/template/defaulttags.py" in render
  311.             if match:
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/UserList.py" in __len__
  30.     def __len__(self): return len(self.data)
Exception Type: AttributeError at /admin/cmh_server/module/7/
Exception Value: 'AdminErrorList' object has no attribute 'data'
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-10-20 04:24:03

事实证明,这是由于django的过时版本-嵌套内联。

调试的线索来自于问“这个AdminErrorList是什么?”,这导致了“admin.py中有什么?”,这导致了“哇,这个嵌套行是什么,它是否符合1.7”。

最近有一个关于django的提交--嵌套内联,它引用了与AdminErrorList相关的更新,而这个更改解决了我的问题。

票数 1
EN

Stack Overflow用户

发布于 2014-10-20 01:17:16

你可能有第二次追踪。尝试直接在命令行中获取主命令,而不是在web浏览器中。尝试用以下方法复制该bug:

代码语言:javascript
复制
python manage.py runserver --traceback --nothreading --noreload

只有第一种选择非常重要。其他选项只简化调试。

您的错误在类ErrorList中。类UserList仅用于Django 1.7,而不用于任何较老的Django,因为以前的任何Django中都不存在该类。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26456068

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档