[Hỏi] Thiết kế cơ sở dữ liệu trong Mongodb



  • Em đang cần thiết kết một cơ sở dữ liệu trong đó có 2 người dùng với 3 vai trò khác nhau và có những thuộc tính giống nhau và cả khác nhau , vây em nên dùng 1 bảng để lưu 3 cái đó hay là dùng 3 bảng với 3 người đó? Bác nào có kinh nghiệm giúp em với ạ



  • @Thắng-Đỗ Bạn nói rõ usecase được không.
    2 loại tài khoản users với 3 roles hả.
    1 user sẽ có nhiều roles không hay chỉ 1 role.
    Những thuộc tính giống và khác nhau là gì ?.



  • Em có mỗi user có nhiều role khác nhau, và mỗi user lại có những thuộc tính cùng nhau và những thuộc tính khác nhau đặc trưng của từng loại khác nhau



  • @Thắng-Đỗ
    Nêú mấy thuộc tính khác nhau thì không phải entity của model rồi thì cứ vầy thôi

    User {
    id: PK,
    username: string,
    email: string,
    roles: [] // has many dùng mongo mà đúng k =))
    ... // Những fields chung ở đây
    }
    
    Info {
    userId: .... // id user sở hữu info này
    meta: JSON // chứa tất cả những gì cần khác nhau đây
    }
    
    Role {
    id,
    name,
    description,
    resources: [] // Resource data có thể thực hiện
    }
    


  • Vâng em cảm ơn bác


Log in to reply