[英]Use username as email, Spring Security UI plugin
我將Spring Security插件與Spring Security UI插件結合使用。
它們都像超級按鈕一樣工作,但是我的問題是我不希望用戶擁有用戶名,而是他/她應使用電子郵件作為用戶名。
所以在注冊階段,我嘗試從注冊頁面中刪除用戶名並進行設置
newUser.username = params.email
這樣,插件仍然可以訪問變量用戶名,但這給了我驗證錯誤,而我卻想不出解決方法。
有任何想法嗎? 有人做過類似的事情嗎?
您可以修改Spring Security使用的默認用戶字段
在您的Config.groovy中添加以下內容
grails.plugins.springsecurity.userLookup.usernamePropertyName ='XXX'
其中XXX是要使用的用戶實體的字段
您可以在此處檢查配置屬性
我最近通過將視圖和控制器從Spring Security插件復制到我的grails-app並更新了視圖以將emailAddress顯示為反對用戶名來完成此操作。 我還用User域類中的emailAddress替換了username屬性。 確保按照以下方式更新約束:
static constraints = {
emailAddress email: true, blank: false, unique: true
password blank: false, password: true
}
dimcookies的建議是正確的,並且適用於舊版本的Grails,新的語法配置(至少適用於Grails 2.3.1)是:
grails.plugin.springsecurity.userLookup.usernamePropertyName = 'emailAddress'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.