2013-10-24 200 views
1

我正在學習Django,我正在嘗試在我的網站上創建幾個頁面和子頁面。在Django中創建頁面/子頁面

項目

urls.py:

從django.conf.urls導入模式,包括,URL

urlpatterns的=模式( '', URL(r'home /」,包括( 'home.urls',命名空間= '家')),
URL(r'about /」,包括( 'about.views',命名空間= 'About_page')), )

我第一次創建主頁:

urls.py:

from django.conf.urls import patterns, url 
from home import views 

urlpatterns = patterns('', 
    url(r'^$', views.index, name = 'index'), 

views.py:

from django.http import HttpResponse 
from django.template import RequestContext, loader 
from django.shortcuts import render, render_to_response 

def index(request): 
    return render(request,'homepage_template/home.html') 

下一個我試圖創建一個關於頁面,但我得到這個錯誤:

Exception Type: ImproperlyConfigured 
Exception Value:  
The included urlconf <module 'about.views' from '/home/bradford/Development/Django/pub_pic/about/views.pyc'> doesn't have any patterns in it 

這是什麼我的應用程序如下所示:

from django.http import HttpResponse 
from django.template import RequestContext, loader 
from django.shortcuts import render, render_to_response 

def index(request): 
    return render(request,'About_template/about.html') 

我沒有urls.py但我認爲行

url(r'about/', include('about.views', namespace = 'About_page')), 

將直接includeabout.views。但是我錯了,因爲這永遠不會在about/views.py

叫我index()功能我後來在pub_pic/urls.py改變了url()到:

url(r'about/', include('about.views.index', namespace = 'About_page')), 

但我得到這個錯誤:

Exception Value:  
No module named index 

我覺得這引起由於只有about.views是模塊,而不是index()

我不太清楚如何爲一個結構良好的項目創建頁面或子頁面以及最佳實踐。有人可以給我一些建議嗎?謝謝!

回答

2

在您的項目urls.py中,您不能在urlpatterns中包含應用程序的視圖文件。

url(r'about/', include('about.urls', namespace = 'About_page')),) 

並在大約/ urls.py

from django.conf.urls import patterns, url 
from about import views 

urlpatterns = patterns('', 
    url(r'^$', views.index, name = 'index'),) 

如果只有一個約/ urls.py網址,然後就可以直接把它放在項目的urls.py。

from django.conf.urls import patterns, include, url 

urlpatterns = patterns('', 
    url(r'home/', include('home.urls', namespace = 'home')), 
    url(r'^about/$', 'about.views.index', name="About_page_index"), 
) 
+0

這正是我想要的!謝謝!! = d – Liondancer