Tham chiếu thực thể so với phân loại


10

Hãy nói rằng tôi có một đội, trong đó có các thành viên. Tôi có một loại nội dung cho nhóm và một loại nội dung cho từng thành viên trong nhóm. Giả sử còn có các mối quan hệ khác, ví dụ như các nhóm có thể thuộc về các phòng ban và có những dự án có thể được chỉ định cho các cá nhân hoặc nhóm.

Theo tôi hiểu, có hai cách tôi có thể xác định mối quan hệ giữa các thực thể này - hoặc là tham chiếu Thực thể hoặc sử dụng thuật ngữ Phân loại. Khi nào tôi nên sử dụng một loại hơn loại kia? Là tốt nhất để chọn chỉ một phương pháp, hoặc trộn chúng?

Đối với tôi, dường như Taxonomy là linh hoạt nhất, bởi vì nó dễ dàng xây dựng cây bằng cách sử dụng các loại phân loại, hoặc nếu trong một nhóm tôi sau đó tôi quyết định tôi muốn xây dựng một hệ thống phân cấp trong nhóm thì chức năng đã có sẵn (chỉ cần kéo thuật ngữ phân loại vào hệ thống phân cấp) trong khi nếu tôi đã sử dụng tham chiếu Thực thể, tôi không thể nghĩ ra một cách đơn giản để làm điều đó (ngoài việc thêm phân loại, sau đó dẫn đến dư thừa).

Cảm giác như thể có điều gì đó tôi không hiểu ở đây, nhưng tôi không chắc nó là gì!

Bất kỳ trợ giúp sẽ được đánh giá cao.


Ok, tôi đã đạt được một số tiến bộ trong sự hiểu biết - một tài liệu tham khảo Thực thể thực sự có thể là một thuật ngữ Phân loại! vì vậy "Nhóm B" thực sự có thể là cả Loại nội dung (chứa mô tả) và liên kết tham chiếu Thực thể với thuật ngữ Phân loại (cùng tên). Sau đó, người dùng có thể được liên kết với thuật ngữ Phân loại, thay vì loại nội dung ...
James

Tôi đoán một điều tôi vẫn chưa giải quyết được - sự khác biệt giữa việc có một trường trong một loại nội dung là thuật ngữ phân loại và tham chiếu thực thể liên quan đến thuật ngữ phân loại - sau này có vẻ như là một cấp độ bổ sung của biến chứng.
James

Họ là khá so sánh. Không nhất quán, tôi thích sử dụng Entity Reference.
alex cười Nam 19/03/2015

Nhưng nếu bạn sử dụng tham chiếu Thực thể, vẫn còn trường hợp sử dụng phân loại vẫn tốt hơn? Vì vậy, ví dụ nếu chúng ta có một hệ thống phân cấp tổ chức, thì đối với tôi, phân loại học là một cách tốt hơn để làm điều đó.
James

Câu trả lời:


21

Bạn đang nói về hai khái niệm khác nhau ở đây. Câu hỏi đầu tiên liên quan đến bất cứ khi nào người ta muốn tổ chức nội dung thành các danh mục khác nhau hoặc nếu người ta muốn xây dựng mối quan hệ giữa các loại nội dung hiện có. Một câu hỏi khác là, nếu, khi sử dụng phân loại, sẽ tốt hơn nếu sử dụng trường tham chiếu phân loại hoặc trường tham chiếu thực thể.


Về khái niệm đầu tiên

Nó phụ thuộc vào trường hợp sử dụng của bạn. Phân loại tư duy rất tốt cho việc xây dựng hệ thống phân cấp, như bạn đã đề cập, nhưng lý tưởng nhất là bạn không nên sử dụng các nguyên tắc phân loại để chứa nội dung thực tế. Lý do cho điều đó thật dễ dàng - trong khi bạn có thể thêm các trường vào các thuật ngữ phân loại, tất cả các cấp độ phân cấp trong phân loại đều sử dụng cùng các trường. Lấy ví dụ của bạn với các thành viên thuộc các đội khác nhau, điều này có thể dẫn đến các vấn đề. Nếu bạn muốn lưu trữ nhiều thông tin về một nhóm hoặc thành viên hơn là tên, ví dụ, nếu bạn muốn lưu trữ thông tin về tên, họ và tiểu sử của thành viên và thêm các trường này vào phân loại, họ sẽ có sẵn về các điều khoản nhóm là tốt. Và nếu bạn thêm trường mô tả đội cho các đội, những đội đó sẽ hiển thị cho các thành viên trong nhóm.

Phân loại được sử dụng tốt nhất khi tổ chức các mục tương tự theo thứ bậc. Giống như các thẻ, ví dụ:

  • rau
    • cà rốt
    • khoai tây
  • trái cây
    • táo
    • trái chuối

Tài liệu tham khảo thực thể là tuyệt vời để thiết lập mối quan hệ giữa các loại nội dung. Ví dụ bao gồm khi bạn có loại nút 'nhóm' và loại nút 'thành viên nhóm', mỗi loại có các trường riêng. Hoặc một loại nút 'bài hát' đang tham chiếu một 'album' mà chính nó tham chiếu đến một 'nhạc sĩ'. Về vấn đề này, các tham chiếu thực thể linh hoạt hơn các nguyên tắc phân loại, vì nó cho phép các mối quan hệ phức tạp hơn. Khi bạn sử dụng lượt xem, bạn cũng có thể sử dụng các mối quan hệ này. Lấy ví dụ của bạn, bạn có thể tạo chế độ xem của tất cả các thành viên trong nhóm và sử dụng tham chiếu thực thể cho mối quan hệ và người ta có thể hiển thị bất kỳ trường nào trên loại nội dung nhóm cùng với các trường từ nút thành viên.

Trộn các trường tham chiếu nút và phân loại cũng hợp pháp. Trong ví dụ của bạn với các nhóm, cả nhóm và thành viên có thể là một nút, tham chiếu lẫn nhau với một tham chiếu thực thể. Đồng thời, bộ phận này có thể là một nguyên tắc phân loại với tất cả các bộ phận có sẵn.


Về khái niệm thứ hai

Khi DO phát hành D7, nó được vận chuyển với trường tham chiếu phân loại để sử dụng khi tham chiếu các nguyên tắc phân loại. Kể từ đó, chúng tôi đã thấy việc phát hành mô-đun Entity API và do đó, mô-đun tham chiếu thực thể và vì các thuật ngữ và phân loại là các thực thể, người ta có thể tham chiếu chúng như bất kỳ thực thể nào khác. Tại thời điểm này, cả hai đang hoạt động rất giống nhau và trong nhiều trường hợp, bạn không sử dụng loại nào. Tuy nhiên, vẫn còn một số mô-đun đóng góp cung cấp các trình định dạng trường và các widget, chỉ hoạt động cho cái này hoặc cái kia. Vì vậy, nó chủ yếu phụ thuộc vào việc bạn cần một bộ định dạng như vậy nếu bạn nên sử dụng tham chiếu phân loại hoặc tham chiếu thực thể.

Vì DO đang thay thế trường tham chiếu phân loại bằng trường tham chiếu thực thể trong D8, tôi thích đi với trường tham chiếu thực thể để liên kết với các nguyên tắc phân loại hơn là trường được cung cấp bởi mô-đun phân loại.


2
Thật là một lời giải thích tuyệt vời! Cảm ơn rât nhiều! Bây giờ tôi hiểu rồi!
James
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.