0

나는 테이블 '토큰'을 가지고는 'User' 여러 'Token'을 가질 수 있으며, 'Token''User'을 1 배에 속할 수, 나는이 관계를 hasMany() & belongsTo()를 사용할 수 있지만 매번 안드로이드 & 아이폰 OS, 토큰 행에서 사용자 로그 아웃 레코드가 제거되고 사용자 로그인시 새 토큰 레코드가 테이블에 추가되므로 증가하는 기본 키가 소비되어 낭비됩니다. 따라서 기본 키를 제거하고 대신 Laravel Query Builder를 사용해야하는지 궁금합니다. Laravel Eloquent는 기본 키없이 올바르게 작동하지 않으므로?Laravel 푸시 알림 토큰 : Eloquent 또는 Query builder를 사용합니까?

+0

인가 토큰 값으로 널 (null)에서 토큰 값을 업데이트하는 경우 (업데이트)

  • 를 null로 토큰을 설정 한 고유의 장치를 로그 아웃 경우
  • 은은을 제거하는 데 필요한 테이블에서 기록 하시겠습니까? 그렇지 않으면 로그 아웃시 토큰을 null로 설정하고 로그인시 업데이트 할 수 있으며 아직 존재하지 않으면 토큰 레코드를 만듭니다. 나에게 더 단순 해 보입니다. –

  • +0

    null 레코드가 여러 개이면 어떻게됩니까? 그래서 '사용자'가 android GCM에 대해 3 개의 다른 토큰을 가지고 있고 2 배에서 로그 아웃 한 경우 2 개의 레코드를 NULL로해야합니까? 나중에 동일한 사용자가 다시 로그인하면 NULL 레코드 중 하나를 업데이트하고 NULL 레코드가없는 경우 새 레코드를 만듭니다. – yeln

    +0

    하나의 토큰 (토큰 유형?) 만 있다고 가정합니다. 토큰으로 바인드 된 레코드를 갱신하고 조건이되는 토큰의 종류를 갱신하십시오. 유형에 대해 ENUM을 사용할 수도 있지만 상황이 얼마나 복잡한 지 잘 모르겠습니다. 이제 사용자가 1 개 이상의 토큰을 가질 수있는 이유가 확실하지 않습니다. –

    답변

    0

    이것은 사용할 수있는 해결책 중 하나 일 수 있습니다. |


    토큰 표

    ID :

    는 토큰 표는 다음과 같이 보일 확인 user_id | 장치 | 토큰


    기기에 고유 한 값을 저장할 수 있습니다. 토큰 테이블에 대한

    몇 가지 하나는 현재의 장치와 아직 존재하지 않는 경우

    • 새로운 토큰 기록을 넣습니다. (설정 토큰)는 사용자가 사용자 로그인을 다시
    +0

    나는 3 개의 안드로이드 장치로 로그인하고 나중에 2, 2x 레코드에서 로그 아웃하면 NULL로 설정되므로 다음 사용자 로그인시 token = NULL 인 레코드가 먼저 존재하는지 확인해야합니다. , 그리고 만약 그렇다면, 나는 새 레코드 행을 생성 할 것인가? – yeln

    +0

    @yeln 네가 지금 가지고 있다고 생각해. token! = null 인 모든 로그온 사용자에게 보낼 수있는 알림. –

    +0

    @yeln 이것이 문제의 해결책이라면 대답을 수락 할 수 있습니까? –