1

我试图弄清楚 django_ajax_selects 并苦苦挣扎;要么文档错误/不清楚,要么我是个白痴。或两者。

我只是想让基础工作正常,然后我会加快速度。我有显示字段,但是当我输入任何字符时没有输出。

在文档中,我对 admin.py 和 urls.py 字段特别困惑。我希望该字段显示在面向用户的模板/表单上,而不是在管理员中,所以我认为这部分不适用于我。但是,如果我应该修改现有的东西以适应我所拥有的东西,我不知道用什么。

这是我到目前为止所拥有的:

设置.py

AJAX_LOOKUP_CHANNELS = {
  'owner' : {'model': 'auth.user', 'search_field: 'username'},
}

网址.py

   url(r'^admin/lookups/', include(ajax_select_urls)), 
#pretty much directly from the docs, but I doubt it's correct for what I'm doing.

forms.py(尝试了两种方法来制作字段——不知道为什么会使用另一种)

class ApplicationForm(forms.ModelForm):

    # owner = make_ajax_field(Application, 'owner', 'owner') 
    owner = AutoCompleteSelectField('owner', required=False, help_text=None)
    class Meta:
        model = Application
        fields = ['name', 'owner']

除了 urls.py 和 admin.py 之外,这似乎很简单,所以我认为那是我出错的地方?

4

1 回答 1

0

遵循文档后我遇到了同样的问题。确保在 html 中添加所有必需的 Javascript 文件和 jQuery 文件。文档中没有提到它,我使用以下方法使其工作:

<link href="/static/ajax_select/css/ajax_select.css" type="text/css" media="all" rel="stylesheet" />

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.8.24/jquery-ui.min.js"></script>

<!-- Custom styles for this template -->
<script type="text/javascript" src="/static/ajax_select/js/ajax_select.js"></script>

ajax_select .js 和 .css 文件在安装时随包一起提供,您只需确保从静态文件夹中正确提供它们,以便在运行测试服务器时显示 js 和 css 文件。我使用了 virtualenv 并使用 pip 来安装它。尝试使用浏览器中的开发工具查看文件是否获得正确的 HTTP 代码 200 OK 或 304。

正如@professorDante 在评论中所说,如果它与管理员无关,请admin/从您的网址中删除。

于 2014-05-12T01:29:15.490 回答