我想在我的web2py应用中禁用正常注册,只允许某些“admin”用户创建新用户。我知道如何禁用注册,但我不知道如何为用户创建一个界面来创建其他用户。我想要的是一个类似于[app]/default/user/register
或[app]/appadmin/insert/db/auth_user
的页面,但在您登录时只能访问“admin”用户。我可以制作一个简单的HTML表单,但之后我会失去所有重要的验证器,这样正常的注册就会发生,更重要的是,我会不必要地重复别人的工作而不是“web2py”的方式。
(更详细一点,我的小组有一些“group_master”用户,保存在数据库的“group_master”表中。我只希望group_masters访问create_user页面,在创建用户后,它会自动加入group_master的我觉得我知道如何处理代码中的组成员资格问题,但我需要帮助才能创建界面。)
答案 0 :(得分:1)
要获取用户输入,您可以创建自定义表单或使用SQLFORM(db.auth_user).process(dbio=False)
之类的内容(dbio=False
阻止在提交表单时自动创建数据库记录)。然后,您可以通过以下方式注册用户:
auth.register_bare(email=request.vars.email, password=request.vars.password)