FCM(Firebase Cloud Messaging) 알림을 Laravel 프로젝트에 통합했습니다.
저는 User
模型中添加了方法 routeNotificationForFcm
에 있어요.
메서드에서 Firebase 장치 토큰을 직접 지정하면 알림 시스템이 제대로 작동하지만 데이터베이스에서 토큰에 액세스하면 실패합니다.
추가된 작업 코드는 다음과 같습니다.
으아악작동하지 않는 코드는 다음과 같습니다(데이터베이스 쿼리)
으아악표시되는 오류 메시지는 등록 토큰이 유효한 FCM 등록 토큰이 아닙니다
입니다.
Laravel 문서에 따르면 pluck return
을 호출한 다음Collection
Collection
- 所以你只需要在查询/集合上调用pluck
后调用toArray()
即可返回数组
- 따라서 쿼리/컬렉션에 대해pluck
toArray()
를 호출하여
배열을 반환하면 됩니다.
$user->id
, 그게 다입니다. 이전에 모의 토큰으로 했던 것처럼요.$this
으아악$user->id
도 호출했지만 이 범위에는 없습니다. 해결책은 간단합니다. 값을 전달하거나
에서 값을 가져와야 합니다.$this
으아악
FcmToken
하지만 개인적으로 이에 대해서는 별도의 관계를 정의하는 것이 좋습니다User
模型的相关令牌的array
으아악
- 모델 이름을 어떻게 지었는지 추측해 보세요. 그런 다음 이를 재사용하여 특정FcmToken
User🎜 모델에 대한 관련 토큰의
배열🎜을 반환할 수 있습니다. 으아악 🎜마지막으로, 코드를 이렇게 구성하면 일반적인 관계가 생기고 이 관계를 사용하여 코드를 더욱 유연하게 만들 수 있습니다. 🎜