我想以编程方式注册用户,因此可以与多个用户一起测试我的应用程序。
我想到的方式是:
if db( db.auth_user ).count() == 0:
alphabet = 'abcdefghijklmnopqrstuvwxyz'
for letter in alphabet:
db.auth_user.validate_and_insert( first_name=letter , last_name=letter , email='%s@%s.com'%(letter , letter) , username=letter , password='qwer' )
但是,这不会设置有关组成员身份的其他表格。
采用:
from gluon.storage import Storage
onaccept = auth.settings.register_onaccept.pop() # Disable registration callback.
alphabet = 'abcdefghijklmnopqrstuvwxyz'
for letter in alphabet:
user = auth.register_bare(first_name=letter, last_name=letter,
email='%s@%s.com' % (letter, letter),
username=letter, password='qwer')
user and onaccept(Storage(vars=user))
auth.settings.register_onaccept = [onaccept] # Restore registration callback.
上面的代码暂时禁用了register_onaccept
回调,因为存在一个错误,register_bare
无法正常工作。而是在注册后手动调用它,并传入user
对象(这是完整的用户记录,包括id
字段)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句