如何理解flask官方文档中的这两段代码?

neilxu
  • 78

小弟通过官方文档学习flask。有两段代码需要帮忙解释一下。
1:http://www.pythondoc.com/flas... 中的

def connect_db():
    return sqlite3.connect(app.config['DATABASE'])

我理解sqlite3.connect是创建数据库,求教后面的app.config['DATABASE']是何意思?

2:http://www.pythondoc.com/flas... 中的

    def setUp(self):
        self.db_fd, flaskr.app.config['DATABASE'] = tempfile.mkstemp()
        flaskr.app.config['TESTING'] = True
        self.app = flaskr.app.test_client()
        flaskr.init_db()

其中'db_fd'是数据库名称吗?
同一行后面的['DATABASE']与之前的app.config['DATABASE']有关联吗?
下一行flaskr.app.config['TESTING']中 TESTING 是哪来的?

小弟对sqlite3了解不多,请各位老师帮忙,多谢

评论
阅读 1.3k
1 个回答
✓ 已被采纳

其实文档中已经很明确的告诉你了。

app.config['DATABASE']

这里用了你前面在定义的变量。如果你按照整个教程来的话,应该在flask.py中可以看到

DATABASE = '/tmp/flaskr.db'

'db_fd' 相当与一个数据库实例。

下一行flaskr.app.config['TESTING']中 TESTING 是哪来的?
由于你没有在flask.py中设置所以通过 = 来设置。默认的值是Flase

flaskr.app.config['TESTING'] = True
宣传栏