2015-09-06 52 views
0

我爲客戶端託管web2py,不想發出web2py管理訪問權限。有多個應用程序在web2py中運行。他們都需要批准註冊的使用權限。我想有一個控制,它允許應用程序管理員打開一個帶有掛起註冊碼的記錄表。所需的唯一功能是從註冊碼中刪除掛起的狀態。這似乎在appadmin控制之外幾乎是不可能的。Web2py管理用戶註冊密鑰掛起狀態

回答

0

Auth表只是標準的數據庫表,因此可以像任何其他表一樣訪問和編輯表。這個任務沒有必要特別使用appadmin。您至少有三種選擇:

  1. 使用內置的Application Management functionality。如果你想限制其auth_user領域是可寫的,您可以包括一個條件,例如在模型文件中:

    if request.function == 'appadmin' and request.args(0) == 'manage': 
        [setattr(field, 'writable', False) for field in db.auth_user 
        if field.name != 'registration_key'] 
    
  2. 創建一個自定義操作,並使用內置grid functionality。爲了限制可視記錄那些正在申請註冊,您可以通過查詢作爲第一個參數與電網:

    SQLFORM.grid(db.auth_user.registration_key == 'pending', ...) 
    
  3. 您可使用的web2py任何設施提供創建自己的CRUD功能。