我很久以前安装了django-ajax-choices,版本为1.2.4。它运作得很好。它似乎有一些我正在尝试实现的ManyToMany字段的错误,所以我升级到1.3.3。现在什么都没有了。
根据文档,我认为我的原始配置应该可以正常工作(即一些自定义查找通道,某些前置表单中的make_ajax_field构造函数等)。所以我根本没有改变我的代码。
HTML看起来是正确的,我认为:我看到了ajax_select属性,on_deck div等等。但输入输入实际上并没有得到任何结果。在chrome调试框中,我没有看到任何url调用实际上像我在原始版本上那样。如果我自己转到URL,它会返回JSON结果,所以我认为后端工作正常。
更新:我不确定javascript是否正确加载。在我的前端页面上,我没有看到在Chrome开发人员工具下列出的js - 来源。在我的管理页面中,它似乎加载了js,但随后js控制台在ajax_select.js下显示“无法读取未定义的属性'fn'。因此,那里也缺少下拉行为。
更新2:我从settings.py中删除了AJAX_SELECT_BOOTSTRAP = True,它完全正常,但仅限于管理员。如果将其设置为false,它仍然不起作用;必须删除整行。但是,这些组合都不会导致它在我的前端站点上工作,该站点使用引导主题并且已经在head元素中加载了jquery,jqueryui。
有什么想法?我甚至无法通过pip降级回1.2.4,因为它似乎没有找到那个版本。
答案 0 :(得分:0)
我找到了一个解决方案,但我不确定为什么需要它:
我删除了AJAX_SELECT_BOOTSTRAP = True。正如我上面所说,我必须完全删除该行,而不是将其设置为false。执行此操作后,任何管理表单都能正常工作。
然后我将其添加到我的前端页面:
现在看起来效果很好。