2017-06-23 87 views
0

我創建一個消息線程架構,其中用戶加入郵件線索,並獲取信息來完成這個特定線程。Graphql消息線程設計

前端:每個消息應該表現出一點的頭像&名 這意味着,我需要獲取誰發送的消息爲所有單個消息(這是當前實現用戶 - 運行一個數據庫查詢來獲取用戶每一個消息)

了一個解決方案是在線程級抓住用戶。這意味着我必須符合message.user_idthread.thread_users['user_id']。如果我在前端做到這一點,會不會很奇怪?我覺得我應該在後臺附加特定消息的用戶?

有沒有一種方法,我可以我thread.thread_users陣列向下傳遞到我的messages連接?

這裏是當前查詢我:

thread(input...) { 
    id 
    // THIS HOLDS THE USERS WHO ARE IN THIS THREAD 
    threadUsers { 
    name 
    firstName 
    avatar { 
     original 
     thumbnail 
     medium 
    } 
    } 
    lastReadMessageId 
    messages { 
    edges { 
      cursor 
      node { 
      from { 
       firstName 
       lastName 
      } 
      messageContent 
      } 
    } 
    } 
} 

我想這個問題是:

是否有可能從消息類型裏面搶thread_users陣列?所以我可以匹配thread_usermessage.user_id

或者我是否應該在前端匹配thread_usersmessage.from_id

數據庫看起來是這樣的:

螺紋:

  • ID
  • created_at
  • owner_id

消息:

  • from_id
  • 在messageContent(消息內容)

thread_users(誰發送郵件的用戶):(只是有記錄哪些用戶是在哪個線程)

  • THREAD_ID
  • USER_ID

回答

0

我最終什麼事做又讓前端處理這個問題。我本可以將Dataloader與Graphql結合使用,但沒有必要。