【问题标题】:In Django Admin interface, can we have autocomplete lookup without a foreign key relationship?在 Django Admin 界面中,我们可以在没有外键关系的情况下进行自动完成查找吗?
【发布时间】:2012-11-26 15:51:46
【问题描述】:

在 django 管理员中是否有办法定义一个自动完成字段,该字段从另一个模型中查找值,它与之没有任何外键/多对多关系? 我试过django-grappellidjango-ajax-selects,但似乎都希望我定义我想要查找的外键。

【问题讨论】:

    标签: django django-admin


    【解决方案1】:

    尝试使用 jquery 的自动完成功能: jquery autocomplete

    在 jquery 自动完成中,您必须准备具有适当值的列表:

    • 第一种可能的方法(我总是在标准模板中使用它)是将查询集传递给上下文并在模板中的 javascript 中准备列表,如下所示:

      var some_list=[{% for element in some_list_from_context %}{"label":"{{element.name}}"}{% if not forloop.last %},{% endif %}{% endfor %} ];

      问题是,我不知道如何扩展管理模板并将变量传递给上下文。

    • 第二种可能性是尝试将javascript文件添加到管理员:

      类媒体: js = ("路径/到/js/文件",)

      并在该文件中对某个方法进行 ajax 调用,该方法会传递带有对象的列表

    【讨论】:

      猜你喜欢
      • 2015-10-24
      • 2019-12-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-08
      • 1970-01-01
      • 1970-01-01
      • 2018-09-18
      相关资源
      最近更新 更多