Những lợi thế hoặc bất lợi của việc sử dụng các mô-đun dựa trên tham chiếu thay vì mô-đun phân loại là gì?


9

Tôi tự hỏi làm thế nào để quyết định sử dụng mô-đun phân loại lõi hoặc mô-đun tham chiếu thực thể ?

Tôi đã không sử dụng mô-đun Tham chiếu Thực thể trước đây nhưng tôi đã sử dụng mô-đun phân loại (và một số mô-đun liên quan) trên 10-15 trang web.

Những lợi thế hoặc bất lợi của việc sử dụng các mô-đun dựa trên tham chiếu thay vì mô-đun phân loại là gì?


Gần đây, tôi đã bắt đầu xây dựng một trang web lưu trữ tạp chí.

Có rất nhiều tạp chí. Những tạp chí có vấn đề. Mỗi vấn đề có bài viết.


Phần nhỏ nhất (và sâu nhất) ở đây là các bài viết .

Bài báo

  • Số trang (phạm vi):
  • Tiêu đề:
  • Tác giả:
  • Loại bài viết:
  • Từ khóa:
  • Tạp chí:
  • Vấn đề:


Vấn đề

  • Số phát hành:
  • Ảnh bìa:
  • Ngày (xuất bản):
  • Tạp chí:


Tạp chí

  • Sự miêu tả:
  • Ảnh bìa:


nhập mô tả hình ảnh ở đây

Ở đây, có (ít nhất) 2 phương pháp để thực hiện trang web này:

1. Sẽ có một loại nội dung được gọi articlevà tất cả các loại khác (vấn đề, tạp chí, tác giả) sẽ là các thuật ngữ phân loại (phân cấp). Sẽ có một hệ thống phân cấp giữa vấn đề và tạp chí, vv

2. Sẽ có rất nhiều loại nội dung: bài viết, vấn đề, tạp chí, tác giả. Trong khi tạo bài viết; vấn đề, tạp chí và tác giả có thể được tham khảo, vv

Vì vậy, về mặt lý thuyết cả hai cách có vẻ rất giống nhau.

Có ai phải đối mặt với tình huống tương tự và bạn có thể vui lòng nói phương pháp nào bạn thích, tại sao không?

Câu trả lời:


9

Ngoài ra còn có các giải pháp khác cho vấn đề của bạn.

Bộ sưu tập hiện trường

Bạn có thể sử dụng các mô-đun chế độ xem trườngbộ sưu tập trường để lưu trữ và sắp xếp nội dung. Sử dụng phương pháp này IssueMagazinesẽ là loại Bộ sưu tập Trường, Issuelà một trường ArticleMagazinelà một trường của Issue. Tôi có kinh nghiệm thực hiện cấu trúc như vậy. Trong trường hợp của tôi, yêu cầu là một Librarycuốn sách nên chứa sách (với các trường Tiêu đề, Nhà xuất bản và ...), Mỗi cuốn sách chứa nhiều tập (Số trang, người dịch, ...) và mỗi tập cũng chứa không giới hạn số lượng của một số mục khác (giống như quét một số trang không giống nhau giữa các cuốn sách).

Tôi đã thực hiện điều này bằng cách sử dụng phương pháp tiếp cận Field Collection và nó rất hay. Bạn có thể dễ dàng tạo một liên kết để chỉnh sửa từng mục riêng lẻ của mỗi bộ sưu tập trường và bạn cũng có thể lọc theo các mục của bộ sưu tập trường. Tôi đã đăng câu trả lời cho các mục Nhóm trong Chế độ xem theo giá trị trong Bộ sưu tập trường trong đó cho biết cách hoạt động với Chế độ xem Bộ sưu tập trường

Thực thể Xem tệp đính kèm

Còn được gọi là mô-đun EVA .

"Eva" là viết tắt của "Đính kèm lượt xem thực thể;" nó cung cấp plugin hiển thị Chế độ xem cho phép đầu ra của Chế độ xem được gắn vào nội dung của bất kỳ thực thể Drupal nào. Phần thân của một nút hoặc nhận xét, hồ sơ của tài khoản người dùng hoặc trang danh sách cho thuật ngữ Phân loại là tất cả các ví dụ về nội dung thực thể.

Bạn có thể sử dụng EVA để chỉ hiển thị các giá trị trường cho một phần nội dung cụ thể, cho phép kiểm soát đáng kinh ngạc đối với màn hình và định dạng linh hoạt của các trường. Ví dụ, bạn có thể muốn có hai trường được nối theo một cách đặc biệt nào đó. Bạn có thể thêm các trường của mình vào màn hình EVA, đặt bộ lọc theo ngữ cảnh thành NID, thêm Toàn cầu: Trường văn bản và sử dụng mã thông báo định dạng các trường của bạn bằng HTML. Đừng quên loại trừ các trường của bạn khỏi màn hình nếu bạn sẽ sử dụng chúng cùng nhau trong Trường Toàn cầu: Văn bản. Ví dụ: Bạn có thể có các thành phố, tiểu bang và các trường zip. Bạn có thể kết hợp chúng trong Toàn cầu: Trường văn bản trong Chế độ xem để hiển thị dưới dạng Thành phố, Bang ZIP ZIP. Khi bạn quản lý màn hình cho loại nội dung của mình, hãy thêm eva vừa tạo vào màn hình và bất cứ khi nào một nút loại được hiển thị, nó sẽ chuyển nid của nó cho EVA và EVA sẽ trả về các trường bạn chọn, định dạng như bạn mong muốn. (nguồn:EVA và Entity Reference Trường hợp sử dụng như thế nào-to )

Mô-đun này là hoàn hảo, Nó gắn Chế độ xem dưới dạng trường vào các nút của loại nội dung. Tôi đã sử dụng mô-đun này để tạo ra một Album. Album chứa singer(với một số thông tin về từng loại) và songscó chứa Tệp, Tiêu đề, Tỷ lệ và .... Vì vậy, tôi đã tạo Chế độ xem loại eva và tôi đã gắn nó vào một nút. Vì vậy, trên trang nút của mỗi Ca sĩ, tôi đã hiển thị Chế độ xem này để nhận thông tin phù hợp từ nút. Các Lần với Entity Reference là một hướng dẫn hoàn hảo về cách sử dụng mô-đun này.

Điều khoản phân loại VS Tham chiếu thực thể

Tôi khuyên bạn nên đọc Tài liệu tham khảo Thực thể so với phân loạiCó bất kỳ lợi ích / cảnh báo nào khi sử dụng Tham chiếu Thực thể qua Tham chiếu Thuật ngữ không? , Như đã nói, Taxonomies được sử dụng tốt nhất khi tổ chức các mặt hàng tương tự theo kiểu phân cấp. Giống như các thẻ .

Phân loại tư duy cho phép bạn sử dụng gắn thẻ miễn phí (có thể bị vô hiệu hóa bằng mô-đun Phân loại nội dung ), cho phép tạo các thẻ mới một cách nhanh chóng. Nó rất dễ dàng để sửa đổi bộ xương của nội dung. Sử dụng phương pháp này, thường xuyên hoặc ít nhất một số người dùng được xác thực (không có kiến ​​thức về lập trình) có thể thay đổi bộ xương này. Phân cấp Chọn mô-đun là ví dụ hoàn hảo của phương pháp này.

Mặc dù Taxonomy rất dễ sử dụng nhưng bản thân tôi thích Entity Reference, nó mở ra rất nhiều khả năng và khả năng mở rộng và cho phép tạo ra các cấu trúc rất phức tạp. Khái niệm thực thể trong bối cảnh này không giới hạn trong nội dung. Nó có thể là ý kiến, người dùng, phân loại và .... Nó có khả năng mở rộng hơn nhiều vì vậy bạn sẽ không lo lắng về việc tùy chỉnh các loại nội dung hoặc sửa đổi nó trong tương lai (như đã được chỉ ra trong tài liệu tham khảo Thực thể so với phân loại ). Tôi tin rằng cách tiếp cận Thực thể mạnh hơn Phân loại.

Ngoài ra còn có một số kết hợp khác của các phương pháp này mà không cần thiết phải đề cập đến chúng.

Dù sao, tôi khuyên bạn nên hiểu đầy đủ cách tiếp cận Thực thể và các mô-đun liên quan. Nếu bạn sử dụng nó trong nhiều dự án, mặc dù nó phức tạp, nhưng nó sẽ rất dễ dàng để bạn sử dụng nó. Không chỉ trong yêu cầu hiện tại của bạn mà còn trong tương lai, nó sẽ trở thành một Công cụ rất đáng tin cậy cho bạn.


Cảm ơn rất nhiều cho câu trả lời chi tiết của bạn. Nó đã cho tôi một viễn cảnh tốt về việc sử dụng các mô-đun phi phân loại. Có 2 điều cần hiểu trước khi tôi sử dụng loại giải pháp đó: 1. Phân loại tư duy có tính năng tự động hoàn thành, các mô-đun này có tính năng này không? Bởi vì không có tính năng tự động hoàn tất trên trang thêm nút, gần như không thể tạo trang web. 2. Tôi có thể sử dụng chính mô-đun phân loại lõi mà không cần các mô-đun khác nhưng các giải pháp bạn đề cập cần có thêm một số mô-đun bổ sung và thật khó để biết "sử dụng mô-đun nào khác sẽ tốt" . Cảm ơn một lần nữa.
herci

2
Chào mừng bạn. Về câu hỏi số 1, Nếu bạn sử dụng mô đun Thực thể và trường tham chiếu thực thể, có, nó sẽ tự động hoàn tất. Nếu bạn sử dụng Bộ sưu tập trường, nó không cần phải tự động hoàn tất vì nó không có mối quan hệ nào, nút và con của nó được đóng gói dưới dạng một gói. Về câu hỏi 2, Nhiều mô-đun phụ thuộc vào mô-đun Thực thể, cho dù bạn đang sử dụng phương pháp nào, bạn sẽ phải cài đặt và kích hoạt mô-đun này. Hơn nữa tôi nghĩ rằng sức mạnh mà nó cung cấp cho bạn xứng đáng được cài đặt một vài mô-đun
M ama D

Mặc dù tôi khuyên bạn nên tránh xa Bộ sưu tập hiện trường, Thực thể với các trường tham chiếu thực thể là một công cụ tuyệt vời và rất mạnh mẽ. Kết hợp với một cái gì đó như CER (Tài liệu tham khảo thực thể tương ứng) bạn có được mối quan hệ 2 chiều, vì vậy trong trường hợp của bạn, bài viết sẽ biết vấn đề và tạp chí thuộc về vấn đề gì, cùng với vấn đề biết về bài viết. Tôi nên lưu ý rằng các khung nhìn đã có một tra cứu ngược cho các mối quan hệ thực thể, nhưng điều này nhanh hơn và mở ra các khả năng mới.
mediaashley

1
@mediaashley để có được 2 cách quan hệ bạn không cần cài đặt CER. Sử dụng các mối quan hệ bạn có thể dễ dàng đạt được điều này. Các drupal.stackexchange.com/questions/124893/ từ giải thích điều này
M ama D

2
Tôi sẽ khuyên bạn nên tránh xa các bộ sưu tập hiện trường cho bất cứ điều gì khác ngoài các trường hợp sử dụng đơn giản. Khi xử lý các yêu cầu phức tạp hơn, bạn sẽ thấy rằng trong các bộ sưu tập trường dài hạn được hỗ trợ yếu trong các mô-đun khác. Một vấn đề khác là tất cả các kỹ thuật drupal để truy cập và thao tác dữ liệu bạn đã sử dụng không áp dụng cho dữ liệu được lưu trữ trong các bộ sưu tập trường. Tất nhiên, vẫn có thể thực hiện tất cả các thao tác dữ liệu, tuy nhiên việc thực hiện khá khó hiểu. Đi với tham chiếu thực thể.
gbyte.co

8

Bạn cũng có thể có một số kết hợp khác, như các bài báo và các vấn đề là các nút mà tạp chí là phân loại.

Thực sự không có câu trả lời đúng hay sai cho vấn đề này, nó thuộc về sở thích cá nhân, yêu cầu dự án cụ thể, v.v.

Tốt nhất là sử dụng các nút cho nội dung và phân loại để phân loại nội dung đó, tuy nhiên đôi khi nó có thể hơi mơ hồ về việc một cái gì đó chỉ là phân loại hoặc nội dung của chính nó.

Ví dụ, các loại bài viết và các từ khóa của bạn dường như rõ ràng là phân loại, nhưng vấn đề và tạp chí thực sự có thể đi theo một cách nào đó.

Một điều có thể ảnh hưởng đến quyết định của bạn là ngoài chức năng hộp. Ví dụ, có nhiều mô-đun bổ trợ cho các nút hơn so với các phân loại nhưng đối với các phân loại bạn thoát ra khỏi các trang liệt kê hộp (nếu bạn muốn chúng). Cũng có thể có chức năng liên quan đến phân cấp dễ dàng hơn để ra khỏi hộp với một giải pháp này hay giải pháp khác.

Định nghĩa loại nội dung chỉ là một phần của hình ảnh. Bạn chắc chắn nên xem xét đầy đủ cách bạn dự định trình bày nội dung cho người dùng, bạn muốn người dùng điều hướng qua hệ thống phân cấp nội dung như thế nào, nội dung này liên quan đến nội dung khác trên trang web như thế nào, bạn muốn quản trị viên quản trị điều này như thế nào nội dung, v.v. Ví dụ: bạn có muốn một số loại hệ thống menu phân cấp, bạn có muốn mọi người có thể đi đến tạp chí hoặc các trang phát hành hoặc là nội dung liên quan đến những thứ chỉ hiển thị trên các trang bài viết. Bạn có muốn có một tìm kiếm liệt kê cả 3 loại nội dung (điều này có thể ít tầm thường hơn nếu một số là nút và một số là thuật ngữ phân loại).

Lập kế hoạch tất cả những điều đó và sau đó xem những mô-đun có sẵn để giúp bạn đạt được điều đó. Bạn có thể tìm thấy một cách sẽ giúp dễ dàng đạt được những gì bạn muốn. Nếu không thì bạn chỉ cần đi với người bạn nghĩ là tốt nhất cho bất kỳ lý do nào bạn có.

Đôi khi bạn có thể đi một chiều và sau đó tìm thấy một cái gì đó gây khó khăn để đạt được yêu cầu của bạn. Nếu bạn lên kế hoạch trước càng nhiều càng tốt, bạn sẽ giảm bớt rủi ro đó.


Vâng, tôi nói bạn có thể có một số kết hợp khác. Tôi sẽ thử các mô-đun dựa trên tham chiếu vì tôi đã sử dụng các giải pháp dựa trên phân loại trong nhiều dự án. Tôi sẽ chia sẻ kết quả cho trường hợp này. Cảm ơn.
herci

5

Một cân nhắc khác khi sử dụng thuật ngữ phân loại cho những thứ như "Tạp chí" là bạn sẽ mất đi chức năng như sửa đổi và nhận xét về các mục đó. Các bản sửa đổi được cấp có thể được thêm vào bằng một mô-đun như sửa đổi Phân loại nhưng đó là mô-đun có cơ sở cài đặt rất thấp. Cá nhân tôi tin tưởng cốt lõi về xử lý sửa đổi trên các nút về điều này.

Tôi có thể nghĩ về ít nhất một lần khi tôi phải thay đổi một thứ gì đó từ thuật ngữ phân loại sang nút sau khi dự án đi vào hoạt động do những thay đổi trong yêu cầu và điều này liên quan đến việc tái cấu trúc và di chuyển một cách công bằng.

Có lẽ bạn sẽ thấy rằng nếu bạn chuyển sang sử dụng các loại thực thể khác, chẳng hạn như các nút có thực thể, thì bạn sẽ không gặp khó khăn gì khi thay đổi vì mọi thứ hoạt động theo cùng một cách nhưng nó sẽ giúp bạn linh hoạt hơn.


Cảm ơn, phần sửa đổi là một điểm tốt. Như bạn đã nói để di chuyển từ phân loại sang nút là khó. Rất có thể tôi sẽ sử dụng một giải pháp dựa trên nút + thực thể . Cảm ơn một lần nữa cho câu trả lời của bạn.
herci

3

Tôi sẽ không nói đây là câu trả lời chính xác nhất, nhưng đó là cách tôi nghĩ về nó. Tôi sẽ giải thích với một số ví dụ.

Tôi thường sử dụng các nguyên tắc phân loại để phân loại các nút dựa trên sự trừu tượng hóa. Ví dụ, tin tức có thể được phân loại thành thể thao, chính trị, vv

Nhưng khi tôi muốn có một tài liệu tham khảo như một tạp chí, tôi đang nghĩ về tương lai. Hãy suy nghĩ về khi bạn muốn giúp người dùng quyết định chọn bài viết nào. Xếp hạng tạp chí (có thể là yếu tố tác động). Hoặc có thể tôi muốn liên hệ với tạp chí đó. Một thuật ngữ sẽ không giúp tôi trong tình huống này, nếu đó là một nút hoặc thực thể thì nó sẽ như vậy.

Mặt khác, bạn phải tự làm một số thứ. Ví dụ: nhấp vào thuật ngữ phân loại sẽ dẫn bạn đến một trang chứa đầy các nút được phân loại của thuật ngữ đó. Vì vậy, bây giờ một chế độ xem và bộ lọc theo ngữ cảnh là cần thiết, v.v.


3

Tôi chắc chắn rằng ai đó đã hỏi tại sao tôi sẽ tránh xa các bộ sưu tập hiện trường, nhưng bình luận dường như đã bị xóa. Dù bằng cách nào thì 2 xu của tôi:

Phân loại nên được sử dụng để phân loại và phân loại. Không cho các mối quan hệ nội dung. Bằng cách liên kết 2 phần nội dung thông qua thuật ngữ phân loại, bạn đang sử dụng 3 thực thể mà bạn chỉ cần 2 thực thể.

Theo kinh nghiệm của tôi, trong khi các nguyên tắc phân loại hiện có thể thực hiện được, chúng không phải là các thực thể chính thức và do đó không nên được sử dụng làm "nội dung".

Trong trường hợp cụ thể này, nếu Tạp chí của bạn có nội dung (mô tả về nội dung của nó, chi tiết về việc đặt hàng, v.v.) hoặc "trang" của chính nó, thì đó phải là một loại nội dung, vì đó là nội dung.

Các vấn đề hơi mơ hồ, nhưng tỷ lệ cược là bạn có một cái nhìn tổng quan, v.v., vì vậy họ có thể có một trang và cũng có khả năng là nội dung. Vì vậy, một loại nội dung khác.

Các bài viết rõ ràng là các loại nội dung.

Khi xây dựng quản trị viên cho việc này, bạn có thể sử dụng Tham chiếu thực thể để liên kết các phần nội dung này, nhưng bạn có thể đi tốt hơn.

Theo cùng cách mà @Drupalist đề xuất khi sử dụng Bộ sưu tập trường, bạn có thể sử dụng các biểu mẫu thực thể nội tuyến (tôi nghĩ là một phần của Tham chiếu thực thể). Bộ sưu tập hiện trường là một trong những mô-đun cũ có ý tưởng tuyệt vời, không được triển khai tốt và có nhiều va chạm với các mô-đun khác. Mặc dù bây giờ chúng là các thực thể, chúng vẫn có vấn đề và bạn sẽ tốt hơn khi sử dụng các thực thể hoàn chỉnh (thậm chí các loại nội dung) cho những thứ như tác giả của bạn, v.v.

Biểu mẫu thực thể nội tuyến cho phép bạn tạo và chỉnh sửa các thực thể được tham chiếu, từ bên trong thực thể bạn muốn tham chiếu từ ... vì vậy, tạo / chỉnh sửa tác giả từ bên trong một bài viết hoặc chỉ tham chiếu một thực thể đã được tạo.

Thêm vào CER và bạn sẽ tự động nhận được một tài liệu tham khảo từ tác giả trở lại bài viết, bài viết trở lại vấn đề và vấn đề trở lại Tạp chí, hoặc bất kỳ hướng nào bạn đang đi. Điều này có lợi thế về cách thức xem của bạn, nhưng cũng cho phép bạn hiển thị danh sách các bài viết trên trang tác giả và thông tin tác giả trên trang bài viết, tất cả đều không có lượt xem.

Vòng tròn đầy đủ trở lại các nguyên tắc phân loại, sau đó bạn sẽ sử dụng chúng để "gắn thẻ" các bài viết, v.v ... với ... "câu cá", "xe hơi", "máy tính", v.v. dù sao ... bạn có thể tìm thấy bất kỳ vấn đề, tạp chí, bài viết nào hoặc tác giả có nội dung / viết về thẻ đó.

Đã cố gắng để làm cho ngắn gọn, vì vậy hy vọng nó sẽ giúp và có ý nghĩa. Tôi đã làm điều này trên hàng chục trang web. Các sự kiện thể thao toàn cầu, các trang web đặt phòng du lịch / kỳ nghỉ, đài truyền hình quốc tế, đồ uống, từ thiện, vv Mạnh mẽ và bảo vệ bạn cho các yêu cầu không lường trước được.


Cảm ơn câu trả lời của bạn. Nó thực sự có ý nghĩa và kinh nghiệm đọc là rất quan trọng đối với tôi.
herci
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.