简体   繁体   English

Web.py待办事项列表示例,但内存中有数据库

[英]Web.py todo list example but with database in memory

First of all I must say I am a complete newbie to web.py . 首先,我必须说我是web.py新手。

I want to modify the todo list example to use a database in memory instead of using mysql. 我想修改待办事项列表示例以在内存中使用数据库,而不是使用mysql。 I ended up writing: 我最后写了:

import web

db = web.database(dbn="sqlite", db=":memory:")

db.query("CREATE TABLE todo (id INT AUTO_INCREMENT, title TEXT);")



def get_todos():

    return db.select('todo', order='id')

def new_todo(text):

    db.insert('todo', title=text)

def del_todo(id):

    db.delete('todo', where="id=$id", vars=locals())

But when I open the website I get: 但是当我打开网站时,我得到:

<class 'sqlite3.OperationalError'> at /
no such table: todo

Any idea? 任何想法?

I think it won't work by design, because webpy rerun all the program for each http request. 我认为这在设计上是行不通的,因为webpy会针对每个http请求重新运行所有程序。 So after at the second request, another database will be created so no persistence betwwen http requests. 因此,在第二个请求之后,将创建另一个数据库,因此http请求之间不会存在持久性。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM