0
사용자가 Google, Twitter 등을 통해 등록 할 때 이름이 겹칠 수 있습니다. 내 앱에서 사용자 이름은 고유 한 색인을 가지고 있습니다. 다른 사람이 처음 로그인 할 때마다 새 문서가 컬렉션에 저장되므로 고유 인덱스가 실패하는 경우가 있습니다. 사용자를 가입에 대한 코드는 다음과 같이 진행됩니다 err
고유 인덱스 오류가있는 경우MongoDB에서 고유 색인이 실패 할 때 대체 기호 생성
- 는 어떻게 확인할 수 있습니다
그래서 내가 여기에 두 가지 문제가?module.exports.findOrCreateUser = (provider, id, data, done) -> User.findByAuth provider, id, (err, user) -> if err? then done err else if user? then done null, user else user = new User auth: [{id: id, provider: provider}] name: data.name email: data.email user.save (err) -> if err? then done err else done null, user
- 사용자 이름에 고유 한 접미사를 추가하는 가장 효율적인 방법은 무엇입니까?
사용자가 로그인하는 데 사용한 서비스의 접두사/접미어는 어떻게됩니까? 예를 들어 google_username, twitter_username, facebook_username, ... – innoSPG
Q (1)의 경우 '오류'에 "중복 키 오류 인덱스"와 같은 설명 메시지가 포함되어야한다고 확신합니다. 'err'을 한 번만 기록해서 알 수 있습니다. –
@innoSPG : 좋은 생각입니다. 나는 그런 생각을하지 못했다. 그들이 로그인 할 때 사용한 서비스의 표시를 피하고 싶었지만 ... – Lanbo