python - 使用 TabularInlines 使 Django-Jet 自动完成

标签 python django autocomplete django-admin django-jet

我的团队一直在使用 "django-jet"作为我们 Django 应用程序中管理员的皮肤。

我们有非常大的选择小部件的内联,因此 django-jet documentation建议,我们在模型中添加了 autocomplete 字段。

问题是它不支持 TabularInlines。检查 django-jet 的代码,您可以看到如何更改以使小部件工作:

  • 在模板目录中复制 Django 的管理“tabular.html”。
  • 在第一行加载jet_tags
  • 将过滤器 jet_select2_lookup 添加到字段。

表格.html

1 {% load i18n admin_urls static admin_modify jet_tags %}
...
...
55               {% if field.is_readonly %}
56                   <p>{{ field.contents }}</p>
57               {% else %}
58                   {{ field.field.errors.as_ul }}
59                   {{ field.field|jet_select2_lookups }}
60               {% endif %}

此方法适用于添加自动完成小部件,但它会因“无效选项”错误而失败。

同时,小部件似乎没有使用管理中定义的formfield_for_foreignkey 方法,因此未过滤查询集。

有没有人使用 django-jet 成功地将自动完成添加到 TabularInline?

最佳答案

一年后,也许我能帮到你。

查看我为 django-jet 制作的这个 PR:

https://github.com/geex-arts/django-jet/pull/329

它会将表单字段的过滤器传递给 select2 元素,而 select2 元素又会在显示选项时将这些过滤器传递给 django-jet。它对我来说很完美。

希望对您有所帮助。

关于python - 使用 TabularInlines 使 Django-Jet 自动完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45065632/

相关文章:

python - 如何从具有默认值的字符串列表中解析(可能未知的)键/值对?

python - 如何为Django构建类似pep8的静态分析工具?

python - setup.py 的 sdist、bdist 和 install 在 data_files 方面表现不同

mongodb - Geonear 和多个 2dsphere 索引

javascript - 如何阻止 jQuery 自动完成在多个值选项中自动建议完整数组

javascript - 如何使用滚动加载自动完成数据

python - 我可以在没有 bjam 的情况下编译 boost.python 模块吗?

python - Django Post.objects.all() 不显示对象属性

Django 不包含已安装应用程序中的 urls.py

python - 使用关键字参数 'ques_detail' 反转 '{' pk' : '' }' not found. 1 pattern(s) tried: [' ques_detail/(? P<pk>[0-9]+)/$']