0

我很久以前安装了 django-ajax-selects,它是 1.2.4 版。效果很好。我现在尝试实现的 ManyToMany 字段似乎有一些错误,所以我升级到 1.3.3。现在没有任何工作。

根据文档,我认为我的原始配置应该可以正常工作(即,一些自定义查找通道,一些前置表单中的 make_ajax_field 构造函数等)。所以我根本没有改变我的代码。

我认为 HTML 看起来是正确的:我看到了 ajax_select 属性、on_deck div 等。但是输入输入实际上并没有得到任何结果。在 chrome 调试框中,我看不到任何 url 调用实际上就像我在原始版本上所做的那样。如果我自己访问 URL,它会返回 JSON 结果,所以我认为后端工作正常。

更新:我不确定 javascript 是否正确加载。在我的前端页面上,我没有看到 chrome developer tools - sources 下列出的 js。在我的管理页面中,它似乎确实加载了 js,但随后 js 控制台在 ajax_select.js 下显示“无法读取未定义的属性 'fn'”。因此,那里也缺少下拉行为。

更新 2:我从 settings.py 中删除了 AJAX_SELECT_BOOTSTRAP = True ,它工作得很好,但只在管理员中。如果将其设置为 false 它仍然不起作用;必须删除整行。但是,这些组合都不会导致它在我的前端站点上工作,该站点使用引导主题并且已经在 head 元素中加载 jquery、jqueryui。

有什么想法吗?我什至无法通过 pip 降级回 1.2.4,因为它似乎找不到那个版本。

4

1 回答 1

0

我想出了一个解决方案,但不确定为什么需要它:

我删除了 AJAX_SELECT_BOOTSTRAP = True。正如我上面所说,我必须完全删除该行,而不仅仅是将其设置为 false。这样做后,任何管理表单都可以正常工作。

然后我将它添加到我的前端页面:

现在它似乎工作得很好。

于 2014-01-20T15:14:33.897 回答