每当我注册一个新用户时,我想用一个默认值填充数据库。如何在用户注册后立即运行函数?
谢谢!
这是我要填充的表格。而且我只想在用户注册时用1填充表格。
db.define_table( 'test' , Field( 'num', 'double' ,
requires=IS_FLOAT_IN_RANGE(0, 1, dot=".",
error_message='Needs to be between 0 and 100') ) )
def user():
return { 'form' : auth() }
答案 0 :(得分:3)
文档的this section中描述的各种Auth操作有一组回调。在这种情况下:
auth.settings.register_onaccept.append(lambda form: db.test.insert(num=1))
auth.settings.register_onaccept
是回调函数列表。在将新记录插入数据库之后,每个函数都会获取注册SQLFORM
对象。新用户ID将位于form.vars.id
。