【问题标题】:Django admin add related object doesn't open popup window?Django admin 添加相关对象不打开弹出窗口?
【发布时间】:2016-01-16 08:13:41
【问题描述】:

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

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

我不知道为什么会这样。我知道我没有提供问题的最小示例,因为我无法构建一个。现在我想诊断这个问题。关于如何诊断这个的任何想法?然后修复它?

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

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

我使用的是 Django 版本 1.8.4。

更新: 弹出窗口与manage.py runserver 配合得很好。该问题仅出现在 apache 下的已部署版本中。我希望这能缩小问题的范围。

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

【问题讨论】:

  • 您使用的是哪个版本的 Django?升级到 Django 1.8 后,我的应用程序中的弹出窗口停止工作。
  • @pista329 我也在用 1.8。
  • 您确定不在浏览器中使用任何弹出窗口拦截器吗?
  • @ShahulHameed 是的,我确信弹出窗口没有被阻止。我检查的第一件事。
  • 我在 Linux 上使用 Django 1.8.2(没有 Grappelli)和 Firefox 42.0 时遇到了同样的问题。刚刚升级到 Django 1.8.6 后,问题就消失了。

标签: django django-admin


【解决方案1】:

我无法制作一个最小的例子来说明正在发生的事情,但它现在已修复。基本上,我做了以下事情:

  1. 已升级到 Django 1.8.6。
  2. python manage.py collectstatic(如https://community.webfaction.com/questions/18544/there-is-not-popup-window-for-one-to-many-relationship-with-djangos-admin-v18所建议)

所以最后我不确定是什么问题。我希望这对其他人有用。

如果其他人提出了一个更完整的答案,其中涉及一个最小的示例并解释了发生了什么,我很乐意更改接受者的答案。

【讨论】:

    【解决方案2】:

    这似乎是 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' %}"/>
    

    【讨论】:

    • 如果您有新问题,请点击 按钮提出问题。如果有助于提供上下文,请包含指向此问题的链接。 - From Review
    • 这不是一个新问题。这是基于@becko 要求的“最小示例”和“正在发生的事情的解释”的解决方案
    • 谢谢@discostu 我已经编辑了您的答案,以便更清楚地表明您正在给出答案,而不仅仅是说“我也有”或提出不同的问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-11
    • 2015-04-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多