2

我目前正在使用一个名为的应用程序,该应用程序在内部发送消息时django-postman利用django-ajax-selects在用户名中提供自动完成功能。中显示的视图django-ajax-selects非常整洁,但是当我实际使用它时,它的视图dropdown非常粗糙。

我附上了截图。任何人都可以帮助了解我为什么会得到这种基本的粗略观点。 在此处输入图像描述

从这里可以看出,建议的名称即将到来。我还想知道是否可以添加用户 gravatar 以及他们的名字,以使其更具视觉吸引力。

4

1 回答 1

1

我最终想出了如何解决这个问题,但没有更新这个答案。但既然我收到了评论,我想我应该分享我所知道的一切。我不完全记得我写了什么以使其开始正常工作,但我将分享我在文件中所做的所有设置,并希望它也适用于其他人

首先,我为自动完成字段安装了 django-ajax-selects。这是应用程序的链接https://github.com/crucialfelix/django-ajax-selects

在项目中安装后,您需要在设置文件中进行这些特定设置

POSTMAN_AUTOCOMPLETER_APP = {    {% if is_autocompleted %}
 <script type="text/javascript" src="{{ STATIC_URL }}js/jquery.autocomplete.min.js"></script>
<link href="{{ STATIC_URL }}css/jquery.autocomplete.css" type="text/css" media="all" rel="stylesheet" />
 {% endif %}
        'name': 'ajax_select',
        'field': 'AutoCompleteField',
        'arg_name': 'channel',
        'arg_default': 'user', # no default, mandatory to enable the feature
}

AJAX_SELECT_BOOTSTRAP = True
AJAX_SELECT_INLINES = 'inline'

AJAX_LOOKUP_CHANNELS = {
       # pass a dict with the model and the field to search against
       'user'  : {'model':'auth.user', 'search_field':'username'},
}

您需要在模板中包含 jquery 自动完成文件。现在这个库已经与 jquery ui 集成,所以请确保您使用旧的 jquery 自动完成 js 文件。这可能是它不起作用的原因之一。

{% if is_autocompleted %}
 <script type="text/javascript" src="{{ STATIC_URL }}js/jquery.autocomplete.min.js"></script>
<link href="{{ STATIC_URL }}css/jquery.autocomplete.css" type="text/css" media="all" rel="stylesheet" />
 {% endif %}

正如我所说,我不完全记得我做了什么,以至于应用程序开始工作,但这些都是我项目中存在的所有设置。

谢谢

于 2012-11-29T07:33:04.443 回答