如何简单服务索引.html和Django在一起?

2024-09-30 08:22:17 发布

您现在位置:Python中文网/ 问答频道 /正文

索夫

我刚刚在我的ubuntu设备上安装了django1.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所以看起来像这样:

^{pr2}$

然后我添加了这个文件:

~/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到{}
  • python在views.py内部运行index()
  • 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或{}中有语法错误? 也许我应该给。。。 ~/dj10/dj10/settings.py ?? 在

问题又来了:

如何配置 ~/dj10/dj10/ 这样django将服务~/dj10/dj10/templates/index.html 当我得到/index.html ?? 在


Tags: djangopyurlindexadminrequesthtmlcontext
2条回答

我不明白你为什么要专门提供网址”索引.html". 您已经将Django配置为响应路径“/”为该HTML文件提供服务,这是正确的做法。没有理由在路径中使用模板名称,最好不要这样做。在

如果出于某种原因确实想这样做,则需要在网址.py公司名称:

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

但正如我所说,你不应该这样做。在

简单的服务是很容易的索引.html对于Django:

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

相关问题 更多 >

    热门问题