Django admin添加相关对象是不是打开弹出窗口?

时间:2015-10-17 17:49:29

标签: django django-admin

当我尝试创建相关对象时,django-admin应用程序应该打开一个弹出窗口。例如,单击此处的绿色加号按钮:

enter image description here

应该带一个新的弹出窗口,我可以在其中创建一个新的相关(在本例中为Session)对象。但是,当我单击绿色加号按钮时,对象创建将在同一窗口中打开,而不是弹出窗口。这是一个问题,因为如果用户开始创建主对象,然后在中途点击绿色加号,他将丢失主要对象上的所有进度。这意味着绿色加号无法使用。

我不知道为什么会这样。我知道我没有提供问题的最小例子,因为我还没有能够构建一个问题。现在我想诊断问题。有关如何诊断这个的任何想法?并解决它?

我可以提供您认为必要的任何信息。

相关:Django admin popup links are broken。但是他使用Grappelli,我不是。我正在使用默认的django管理界面。

我使用的是Django 1.8.4版。

更新:弹出窗口可以正常使用manage.py runserver。只有在apache下部署的版本才会出现此问题。我希望这会缩小这个问题。

在google群组中:https://groups.google.com/forum/#!topic/django-users/awYelJjFjHk

2 个答案:

答案 0 :(得分:2)

我无法提供正在发生的事情的最小例子,但现在已修复。基本上,我做了以下事情:

  1. 升级到Django 1.8.6。
  2. Ran python manage.py collectstatic(如https://community.webfaction.com/questions/18544/there-is-not-popup-window-for-one-to-many-relationship-with-djangos-admin-v18中所述)
  3. 所以最后我不确定问题是什么。我希望这对其他人有用。

    如果其他人提出了一个更完整的答案,其中包含一个最小的例子并解释正在发生的事情,我很乐意改变接受者的答案。

答案 1 :(得分:1)

这似乎是1.9.3中可重现的错误。自己测试我使用最新的Django(1.9.3)设置了一个新项目并遇到了同样的错误。以下是修复。它似乎也适用于1.9.1我现在将向Django团队报告。

+++ b/contrib/admin/templates/admin/related_widget_wrapper.html
@@ -10,7 +10,7 @@
         </a>
         {% endif %}
         {% if can_add_related %}
-        <a class="related-widget-wrapper-link add-related" id="add_id_{{ name }}"
+        <a class="related-widget-wrapper-link add-another" id="add_id_{{ name }}"
             href="{{ add_related_url }}?{{ url_params }}"
             title="{% blocktrans %}Add another {{ model }}{% endblocktrans %}">
             <img src="{% static 'admin/img/icon-addlink.svg' %}" alt="{% trans 'Add' %}"/>