2014-10-19 18 views
2

我在iOS上使用Parse的內置註冊視圖控制器,PFSignUpViewController實例設置爲使用emailAsUsername。使用此設置,它將用戶名正確設置爲用戶的電子郵件,但將電子郵件設置爲空字符串。這是一個很大的問題,因爲如果兩個用戶嘗試使用同一封電子郵件註冊,它也會引發異常。空的電子郵件字段異常與解析PFSignUpViewController

我已經嘗試將用戶名複製到委託方法shouldBeginSignUp中的電子郵件字段中,在註冊字段被填寫之後但註冊發生之前被調用。出於某種原因,電子郵件仍設置爲空字符串。

我也試過創建一個雲代碼saveBefore觸發器在保存之前更新電子郵件字段服務器端。但解析不允許該字段在雲代碼中更新 - 據推測,因爲它可能不是唯一的:)

解決方法是在註冊過程成功後儘快將電子郵件設置爲用戶名,但這顯然會失敗兩次註冊幾乎在同一時間發生。

回答

0

PFLogInViewControllerPFSignUpViewController都有一個名爲emailAsUsername的屬性。您可以簡單地將其設置爲true

是否在登錄視圖中提示輸入電子郵件作爲用戶名。如果設置爲YES,我們將在用戶名字段中提示輸入電子郵件。此屬性值傳播到附加的signUpController。默認情況下,它被設置爲NO。

鏈接引用:

https://parse.com/docs/ios/api/Classes/PFLogInViewController.html#/c:objc(cs)PFLogInViewController(py)emailAsUsername

https://parse.com/docs/ios/api/Classes/PFSignUpViewController.html#/c:objc(cs)PFSignUpViewController(py)emailAsUsername