2013-11-03 200 views
1

我想弄清楚django_ajax_selects和掙扎;無論是文檔錯誤/不清楚,或者我是個白癡。或兩者。Django_ajax_selects不返回任何東西

我只是想獲得基本的工作,然後我會加快速度。我有字段顯示,但輸入任何字符時沒有輸出。

在文檔中,我對admin.py和urls.py字段特別困惑。我希望該字段在面向用戶的模板/表單上顯示,而不是在管理員中顯示,所以我會假設該部分不適用於我。但是,如果我應該修改那些適合我的東西,我不知道是什麼。

這是我到目前爲止有:

settings.py

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

urls.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,所以我認爲這就是我出錯的地方?

+0

您是否試過完全限定的應用程序路徑'django.contrib.auth'?你的應用程序類是否有用戶的FK? – professorDante

+0

我會給它一個鏡頭,但我真的認爲問題在於urls.py或admin.py,不是嗎? – thumbtackthief

+1

我看到 - 文檔是以管理員爲中心的。忽略它們然後,你不需要任何管理員的東西。將您的網址更改爲'r'^/lookups /'...並且您不需要admin.py。上面的其他建議仍然適用。 – professorDante

回答

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/