SOF,
我刚在我的ubuntu盒子上安装了django 1.9。
我想部署一个轻量级的django应用程序。
我这样做了:
cd ~
django-admin startproject dj10
cd ~/dj10/dj10/
mkdir templates
echo hello > templates/index.html
如何配置
~/dj10/dj10/
这样django将服务~/dj10/dj10/templates/index.html
当我获得/index.html
时
??
我尝试编辑~/dj10/dj10/urls.py
所以看起来像这样:
from django.conf.urls import url
from django.contrib import admin
from . import views
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^$', views.index, name='index'),
]
然后我添加了这个文件:
~/dj10/dj10/views.py
看起来像这样:
from django.shortcuts import render
def index(request):
context = {}
return render(request, 'index.html', context)
接下来我启动了服务器:
cd ~/dj10/
python manage.py runserver
这就是我想要发生的事情。
/index.html
~/dj10/dj10/urls.py
将/index.html
与views.index
index()
views.py
index()
在此处找到index.html
:~/dj10/dj10/templates/index.html
index()
呈现index.html
相反,我看到了这一点:
Page not found (404)
Request Method: GET
Request URL: http://lh:8000/index.html
Using the URLconf defined in dj10.urls, Django tried these URL patterns, in this order:
^admin/
^$ [name='index']
The current URL, index.html, didn't match any of these.
那么,我可能在urls.py
或views.py
中出现语法错误?
也许我应该添加一些语法...
~/dj10/dj10/settings.py
??
这是一个问题:
如何配置
~/dj10/dj10/
这样django将服务~/dj10/dj10/templates/index.html
当我获得/index.html
时
??
答案 0 :(得分:0)
我不明白为什么要专门提供网址" index.html"。您已将Django配置为响应路径" /"来提供该HTML文件,这是正确的做法。没有理由在路径中使用模板名称,最好不要这样做。
如果您确实因某些原因想要这样做,则需要在urls.py中指定确切的文件路径:
url(r'^index.html$', views.index, name='index'),
但正如我所说,你不应该这样做。
答案 1 :(得分:0)
使用Django SIMPLY为index.html提供服务非常容易:
git clone https://github.com/heroku/python-getting-started dj101
cd dj101
vi hello/templates/index.html
pip install -r requirements.txt
git commit -am hello
heroku local
heroku create dj101
git push heroku master