我有一个django项目正在制作中,目前仅包含一个应用程序。假设我的域名为myproject.com
,我的应用名为myapp
。我希望索引为myproject.com/
而不是myproject.com/myapp/
。
这就是myproject/urls.py
的样子:
urlpatterns = patterns('',
url(r'^myapp/', include('myapp.urls')),
...
myapp.urls.py
:
urlpatterns = patterns('myapp.views',
url(r'^$', 'about'),
...
如何在myproject.com下提供该应用?或者是你应该通过重新指导做的事情,例如:在你的.htaccess?
答案 0 :(得分:5)
您必须将urls.py
重新定义为此
urlpatterns = patterns('',
url(r'^$', include('myapp.urls')),
...
这将捕获对'/'。
的所有调用这将启用“root”中的所有网址。
当然,你必须写下你的myapp.urls
,以便它们有意义
放入网络浏览器。
<强>更新强>
所以在聊天之后:这就是我认为你想要纯代码的东西
在您的根urls.py
url(r'', include('myapp.urls')),
你的myapp.urls中的
urlpatterns = patterns('myapp.views',
url(r'^$', 'first_view'),
url(r'^evilCellphones/$', 'another_view'),
)
这里实际发生的是你将myapp.urls
包括在内
命名空间,但由于Django仍然加载它,它将包括你新定义的URL。
从那里你可以重新定义你的所有网址,并让他们服从相同的名称
空间为“myproject”。