我有两个具有相同表的数据库(Oracle和MSSQL)。登录到应用程序时,可以选择其中一个数据库。
view.html
<form action="{{=URL('test?dbs=')}}">
<label for="dbs">Choose a DB:</label>
<select name="dbs">
<option value="oracle">Oracle</option>
<option value="mssql">MSSQL</option>
</select>
<input type="submit" value="Submit">
</form>
{{=db_choose}}
controller.py
def test():
db_choose = request.vars.dbs
if db_choose == "oracle":
db = DAL('oracle://username/password@test')
return dict(db_choose = db)
elif db_choose == "mssql":
db = DAL('mssql://username:password@localhost/test')
return dict(db_choose = db_choose)
else:
return dict(db_choose = db_choose)
return dict(db_choose = db_choose)
您需要在请求之间保持选择,因此也许将选择存储在会话中。