2013-10-24 93 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