使用heroku部署应用程序?基本查询

时间:2013-09-07 19:37:46

标签: python html heroku flask

好的,我开始使用flask和heroku,然后我继续学习更多,我今天刚刚开始时非常天真。我找到了Ryan Shea撰写的精彩博客,

http://ryaneshea.com/lightweight-python-apps-with-flask-twitter-bootstrap-and-heroku

此特定博客解释了以下内容,

1>什么是烧瓶和heroku 2 - ;如何使用CL创建,编写和连接到heroku。

我跟着它,因为它非常简单,我在中间遇到了很多关于ssh键和创建procfile等的问题,我用SO来搞清楚。

我做了什么 - >

我创建了virtualenv,然后我输入了app.py,创建了procfile以及req.txt文件。 我连接到heroku并创建了一个堆栈雪松,也重命名了它。

然后是HTML文件,有一个base.html,一个索引和404个html文件。 我键入了所有这些并保存了它们。然后当我运行代码时,

python app.py 

代码运行, 我尝试从同一网络上的不同计算机连接到IP,它连接并打印

'你好,来自python'

这是第一次

@app.route("/")
 return 'Hello from python' 

我的问题是,为什么base.html或其他html文件不存在? 我理解应用程序是如何在heroku中成功部署的,但是其他什么是html文件以及它们如何工作? 请参考以上链接并回答我的问题。 我真的很天真,并且裸露它。万分感谢。

1 个答案:

答案 0 :(得分:0)

首先,如果您刚开始使用Flask,我建议您阅读Miguel Grinberg撰写的The Flask Mega-Tutorial。本教程介绍了Web应用程序的开发,包括部署到Heroku,并且很好地解释了为什么以及如何使用不同的方法。

关于你的问题,Flask使用.html文件作为模板使用Jinja 2模板引擎,它具有类似于Django的标记语法。要使用模板,您需要使用Flask的模板渲染挂钩之一调用它,最常见的是render_template。您可以看到在此处链接的指南中使用了render_template(最后一个代码块中的第三个):

@app.route("/")
def index():
    return render_template('index.html')

这告诉Flask使用位于与app.py相对的templates文件夹中的'index.html'模板生成页面。