有問題的標籤:Django的網址模板標籤:「模塊」對象有沒有屬性「意見」
< a href="{% url django.contrib.auth.views.login %}">Login< /a>
URL配置:
from django.contrib.auth import views <br />
...<br />
(r'^login/$',views.login, {'redirect_field_name' : '/' })
<br />...
有問題的標籤:Django的網址模板標籤:「模塊」對象有沒有屬性「意見」
< a href="{% url django.contrib.auth.views.login %}">Login< /a>
URL配置:
from django.contrib.auth import views <br />
...<br />
(r'^login/$',views.login, {'redirect_field_name' : '/' })
<br />...
出於某種原因,不喜歡我的方式正在導入它。
解決方案:
from django.contrib.auth.views import login
(r'^login', login, etc.)
,最好使用命名的網址,他們節省了大量的維護工作,在未來,打字擺在首位。
如果您保持url的名稱相同,您可以重命名查看功能,將其移動到不同的應用程序等,您不需要更改模板或使用此URL的其他地方。
在urls.py:
url(r'^login/',path.to.view,name='login',...)
模板:
<a href="{%url login%}">login here</a>
的觀點:
login_url = reverse('login')
我相信,我有一些事情要促成這個問題。
對我來說奇怪的是,我的代碼在我如何使用它的方面有意義,但它不起作用。
如果在我的網址,我嘗試了以下。 helloworld是我的django應用程序名稱。
import helloworld
...
url(r'^test', helloworld.views.home1() , name='home'),
它會產生一個錯誤。即使技術上每件事都是正確的。我已經導入我的應用程序將被自動創建一個Python模塊通過django manage startapp
module' object has no attribute 'views'
我找到了源代碼,django project site在GitHub上,有一個看看他們是如何做到的進口,在其應用的網址部分。去看看這個項目在github上。它是大型項目實施的極好參考。那裏有很多東西需要學習。 https://github.com/django/djangoproject.com。
這是他們如何做他們的進口和網址配置。
from accounts import views as account_views
...
url(r'^~(?P<username>[\w-]+)/$', account_views.user_profile, name='user_profile'),
所以我修改了代碼,類似
import helloworld.views as helloView
...
url(r'^test', helloView.home1 , name='home'),
某事,這是最有可能有些事情與應用程序/項目/ Python的命名空間。我不完全確定。但是我的代碼按預期工作,我仍然可以在各自的名稱空間中使用不同的應用程序。我只需要確保import app.view as somename
在app/project/python命名空間方案中是唯一的。
非常感謝! – SapphireSun 2009-11-17 00:19:31
不客氣! – Evgeny 2009-11-17 01:06:46