2016-04-27 42 views
3

我正在運行Pycharm 2016.1並使用Django 1.8來處理項目。通常PyCharm有這個實用的功能,可以自動完成{% url %}標籤爲你的模板,但是檢查一直是我現在失敗了一段時間,甚至不會發現的網址可言,給我這個錯誤:Pycharm無法解析Django的URL

unresolved url

該項目工作正常,Django運行時發現所有的URL,所以問題應該與PyCharm。

+0

它是否爲每個網址或只是特定的應用程序做到這一點? – Sayse

+0

@Sayse任何網址,甚至是來自djangos admin-app的標準{%url'admin:index'%}。 – ampled

+1

你可以嘗試'File> Invalidate Caches/Restart' – Sayse

回答

1

您是否試過命名空間的URL?在你的基地urls.py文件,如果你是包括來自其他應用程序的網址,我想補充的命名空間和/或APP_NAME參數,如:

from django.conf.urls import include, url 

urlpatterns = [ 
    url(r'^author-polls/', include('polls.urls', namespace='author-polls')), 
    url(r'^publisher-polls/', include('polls.urls', namespace='publisher-polls')), 

] 

,然後在你的模板,嘗試

{% url 'author-polls:author_poll_list' author.pk %} 

其中author_poll_list是您的特定視圖的名稱。有關命名空間的更多具體信息,請參見here

有一點需要注意的是,您的模板中是否有任何其他模板標記完成工作,例如:靜態標籤,模板包括等?如果他們不是那麼它可能是你需要標記模板文件夾作爲模板文件夾

Settings > Project > Project Structure

我希望這可以幫助。

編輯:

您可能希望有一個快速瀏覽一下:https://youtrack.jetbrains.com/issue/PY-19152,並嘗試你的PyCharm升級到版本2016.1.4,其中包括針對此問題的修復。它看起來像一個類似的問題,你看到/看到。

+1

我試過命名空間,但是,它似乎無論我在實際的URL文件中做什麼都沒有使PyCharm有所作爲。是的,有點令人沮喪的是,任何其他自動完成功能的靜態文件,模板標籤,過濾器等工作正常。我試圖做一個空白的項目,看看url解析是否工作,它確實如此,但我似乎無法看到設置中的任何區別。 – ampled

+0

可能沒有幫助,但可以嘗試通過轉到**設置>語言和框架> Django **禁用/重新啓用Django支持您的項目。取消選中Django支持,**應用**,然後重新啓用。它會要求您將位置重新提供給項目根目錄和設置文件。一旦完成,它應該重建你的項目結構,點擊_Show Structure_並查看它是否可以在那裏看到你的任何URL。 –