我一直在使用sqlite DB一段时间,但想将我的代码集成到web2py esp。 DAL。如何将这样的代码重写为web2py DAL代码?
name = input ('Please Type your Question: ').lower().split()
name2 = name[:]
import sqlite3
for item in name2:#break
conn = sqlite3.connect("foods.db")
cursor = conn.cursor()
cursor.execute("INSERT INTO INPUT33 (NAME) VALUES (?);", (name2,))
cursor.execute("select MAX(rowid) from [input33];")
conn.commit()
for rowid in cursor:break
for elem in rowid:
m = elem
print(m)
cursor.execute("DELETE FROM INPUT33 (NAME) WHERE NAME = name")
答案 0 :(得分:1)
我不太明白这个问题所以我想提前为任何误解道歉。
Web2py是一个Web MVC framework,您应该在设计应用程序时遵循该模式。考虑到这一点,使用与input
等控制台相关的功能是没有意义的。此外,您不应使用相同的组件来提取与用户交互相关的数据,并处理数据库连接和数据访问/操作。
如果您的目的是简单地将使用sqlite3模块的代码段转换为使用pyDAL,则只需将其安装pip install pydal
并将代码更改为
#Do your imports
from pydal import DAL, Field
# connect to your database
db = DAL('sqlite://foods.db')
# define your table model and table fields
db.define_table('input33', Field('NAME'))
# perform an insert into input database
db.input33.insert(name=name2)
# every insert/delete/update needs your to commit to your changes
db.commit()
可以找到完整的文档here