Django 应用程序URL到项目URL

Django 应用程序URL到项目URL,django,django-urls,Django,Django Urls,我有一个django项目正在制作中,目前只包括一个应用程序。假设我的域名是myproject.com,我的应用程序名为myapp。我希望索引是myproject.com/而不是myproject.com/myapp/ 这就是我的myproject/url.py的样子: urlpatterns = patterns('', url(r'^myapp/', include('myapp.urls')), ... 和myapp.url.py: urlpatterns = patterns('myap

我有一个django项目正在制作中,目前只包括一个应用程序。假设我的域名是
myproject.com
,我的应用程序名为
myapp
。我希望索引是
myproject.com/
而不是
myproject.com/myapp/

这就是我的
myproject/url.py
的样子:

urlpatterns = patterns('',
url(r'^myapp/', include('myapp.urls')),
...
myapp.url.py

urlpatterns = patterns('myapp.views',
url(r'^$', 'about'),
...

如何在myproject.com下使用该应用程序?或者这是您应该通过re direct执行的操作,例如在您的.htaccess中

你必须重新定义你的
url.py
,以达到这个目的

urlpatterns = patterns('',
    url(r'^$', include('myapp.urls')),
...
这将捕获对“/”的所有调用

这将从“根”启用所有URL。 当然,你必须编写你的
myapp.url
,这样它们在 放一个网络浏览器

更新

所以在一次大聊之后:这是我认为你想要的纯代码化的东西

在你的根目录下
url.py

url(r'', include('myapp.urls')),
在myapp.url中

urlpatterns = patterns('myapp.views',
    url(r'^$', 'first_view'),
    url(r'^evilCellphones/$', 'another_view'),
)
这里的基本情况是,您将您的
myapp.url
包含到no中 但由于Django仍然加载它,它将包括您新定义的URL。 从那里你可以重新定义你的所有网址,并让他们得到相同的名称 空间被称为“myproject”


我明白其中的含义……因此您认为最好在.htaccess中使用re direct?这完全取决于您计划如何推进项目。如果您计划添加多个应用程序,那么,也许,否则就可以了。在myapp.urls.py中,索引之外的所有内容都应该像这样匹配
^$/contact
几乎,它应该是这样的:
(r'^contact/$,'myapp.view.some\u magical\u pony\u view')
。您不希望url中出现双斜杠。不幸的是,我无法为您测试这个,但将在约30分钟内验证:)我真的不明白这两个url.py文件是如何一起工作的。据我所知,一个是项目范围的,另一个定义应用程序的URL。所以
(r'^contact/$”…
在contact的根目录下查找所有内容。但是如果contact是
html
,这将不起作用,对吗?