webpy使用踩坑

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/linxinfa/article/details/85762531

1 中文乱码怎么解决:

修改,D:\Python36\Lib\site-packages\web\template.py, line 1016:

return Template(open(path).read(), filename=path, **self._keywords)

return Template(open(path,encoding='utf-8').read(), filename=path, **self._keywords)

注:如果是python2

则改为

return Template(open(path).decode('utf-8').read(), filename=path, **self._keywords)

2 数据库怎么改成sqlite?

modle.py中的

db = web.database(dbn="mysql", db='test.db')

改成

db = web.database(dbn="sqlite", db='test.db')

然后写一个创建表的接口:

def create_test_db():
    import sqlite3
    conn = sqlite3.connect('test.db')
    conn.execute('''CREATE TABLE entries (    
    id integer primary key autoincrement,    
    name TEXT,    
    age TEXT, 
    posted_on DATETIME   
);''')
    conn.close()

if __name__ == '__main__':
   create_test_db()

3 多选的Checkbox怎么取值?

web.form.Checkbox('fruits',value='apple',
                          description='苹果'),
web.form.Checkbox('fruits',value='pear',
                          description='梨'),
web.form.Checkbox('fruits',value='mango',
                          description='芒果')

取值

fruits= web.input(fruits=[]).fruits

is_apple_checked = 'apple' in fruits

is_pear_checked = 'pear' in fruits

is_mango_checked = 'mango' in fruits

猜你喜欢

转载自blog.csdn.net/linxinfa/article/details/85762531