2009-08-16 80 views
0

我正在通過Django示例應用程序並遇到URLConf。Django中的URLconf

我認爲頂部的導入語句解析了url的位置,但對於'mysite.polls.urls'我無法通過在導入語句中包含引號來刪除引號。

爲什麼要爲'mysite.polls.urls'使用引號而不是admin url?如果我必須刪除引號,該怎麼辦?

from django.conf.urls.defaults import * 
    ... 
    ... 
    (r'^polls/', include('mysite.polls.urls')), 
    (r'^admin/', include(admin.site.urls)), 

回答

1

您已經刪除了一堆東西,但是您是否有以下聲明?

from django.contrib import admin 

如果是這樣,那就可以解釋爲什麼你不需要引用後者。有關更多信息,請參閱關於AdminSite.urls的django文檔。

如果你想從前者,那麼刪除引號:

import mysite.poll.urls 
... 
(r'^polls/', include(mysite.poll.urls)), 
... 

應該工作。

+0

Thx。完美的工作。你能解釋引用是如何工作的嗎?他試圖從當前的工作路徑構建? – lud0h 2009-08-16 10:23:12

+0

我沒有看過django源代碼,但是,我認爲它只是試圖導入字符串的某個部分,假設它在PYTHONPATH上。查看imp模塊,找到一種可行的方法:http://docs.python.org/library/imp.html – ars 2009-08-16 19:19:15