Tôi đang cố gắng tìm ra một giải pháp tốt (và nhanh chóng) cho vấn đề sau:
Tôi có hai mô hình tôi đang làm việc cùng, hãy gọi họ là người chơi và đội. Một người chơi có thể ở nhiều đội và một đội có thể có nhiều người chơi). Tôi đang làm việc để tạo một thành phần UI trên một biểu mẫu cho phép người dùng chọn nhiều nhóm (hộp kiểm). Khi người dùng đang chọn (hoặc bỏ chọn) các đội, tôi muốn hiển thị các đội được người chơi nhóm lại.
Vì vậy, ví dụ:
Nếu các đội được chọn không có người chơi giao nhau, mỗi đội sẽ có phần riêng.
Nếu người dùng chọn hai đội và họ có cùng người chơi, sẽ có một phần chứa tên của hai đội và tất cả người chơi.
Nếu TEAM_A có người chơi [1, 2, 4, 5] và TEAM_B có người chơi [1, 3, 5, 6]. Sẽ có các phần sau: SECTION_X = [TEAM_A, TEAM_B, 1, 5], SECTION_Y = [TEAM_A, 2, 3], PHẦN _Z = [TEAM_B, 3, 5]
Tôi hy vọng điều đó rõ ràng. Về cơ bản, tôi muốn tìm các đội mà người chơi có điểm chung và nhóm theo đó. Tôi đã nghĩ có lẽ có một cách để làm điều này bằng cách điều hướng một đồ thị lưỡng cực? Không chắc chắn chính xác như thế nào và tôi có thể đang xem xét lại nó. Tôi đã hy vọng thực hiện điều này bằng cách tạo ra một số loại cấu trúc dữ liệu trên máy chủ và sử dụng nó trên máy khách. Tôi rất thích nghe đề xuất của bạn và tôi đánh giá cao bất kỳ sự giúp đỡ nào bạn có thể cung cấp!
Team
nên có một trường được gọi làplayers
yêu cầu mối quan hệ nhiều-nhiều với mô hình khác của bạnPlayer
. Điều này cho phép bạn truy xuất những người chơi nào trong mỗi đội và những đội nào được liên kết với mỗi người chơi.