Rails를 사용하여 간단한 그룹 채팅을 만드는 방법

1726 단어 reactrails
여기요! 프로젝트에서 그룹 채팅을 구현하는 것에 대해 생각해 본 적이 있습니까? 글쎄, 당신은 올바른 위치에 있습니다. Rails 백엔드를 사용하여 간단한 그룹 채팅을 만드는 과정을 단계별로 안내해 드리겠습니다. 바로 들어가 보겠습니다.

시작하려면 다음과 같은 것을 사용하여 백엔드에 대한 컨트롤러, 모델 및 직렬 변환기를 설정하려고 합니다.

rails g resource User name
rails g resource Group name
rails g resource Message text references:user references:group


설정이 완료되면 사용자 및 그룹 모델로 이동하여 해당 모델에 has_many :messages를 추가해야 합니다. 그렇게 한 후 모델은 다음과 같이 보여야 합니다.

사용자:

class User < ApplicationRecord
  has_many :messages
end


그룹:

class Group < ApplicationRecord
  has_many :messages
end


메시지:

class Message < ApplicationRecord
  belongs_to :user
  belongs_to :group
end


다음으로 인덱스를 사용하여 Messages Controller를 설정하고 생성하려고 할 것이며 다음과 같아야 합니다.

class MessagesController < ApplicationController
    def index
        render json: Message.all, status: :ok
    end

    def create
        new_message = Message.create!(message_params)
        render json: new_message, status: :created
    end

    private

    def message_params
        params.permit(:group_id, :text, :user_id)
    end
end


이제 프론트엔드에서 get 요청으로 fetch('/messages')를 반환하고 이미 생성 순서대로 배치된 객체(메시지) 배열을 반환합니다. 여기에서 프론트엔드에서 이를 필터링하여 메시지가 속한 그룹/사용자를 파악할 수 있습니다. (반면에 특정 그룹에 속하는 메시지를 반환하는 경로로 가져올 수 있도록 사용자 지정 경로 및 직렬 변환기를 설정하여 백엔드에서 이 작업을 수행할 수도 있습니다.) 새 메시지를 만들 때 본문 개체의 user_id, group_id 및 텍스트를 사용하여 '/messages'에 게시 요청을 보냅니다.

이것이 그룹 채팅 설정을 시작하는 데 조금이나마 도움이 되었기를 바랍니다!

좋은 웹페이지 즐겨찾기