3

If you were about to create a hierarchy of nodes that can have parents and children, which way would you go for? Using "References" module or the "Books" module that is included in the Drupal standard installation? And why please?

  • 3
    It really depends on what you are trying to do. Do you have a specific system you are trying to implement? If so, please describe it more completely. – Patrick Kenny Nov 3 '13 at 3:32
3

For a strictly hierarchical organization (i.e. an inverted tree) I would use the core Books module. With a book, you get some "extras" to help you with maintenance and navigation. E.g. you get a drag and drop UI to help you re-organize the entire book (or parts of it), you get up/down/sideways navigation links automatically created and inserted, and you get meaningful breadcrumbs. You also get a "Create child node" link at the bottom of any node that is part of the book.

Also note that in Drupal 7, any node content type may be included in the book (i.e. you're not restricted to the "Book page" content type. However, you can't include non-node entities such as taxonomy terms, files and users.

I would not use the References as it is more restricted than the Entity reference module.

And I would only use the Entity reference if I wanted to create a linked structure that is not hierarchical but some sort of directed graph, or I wanted to include non-node entities in this structure.

A typical use case for the Entity reference module would be the "Related issue", "References", "Referenced by" (directed graph); and "Parent issue", "Child issue" (hierarchical) links that are maintained in the new issue tracker system at the D7 version of Drupal.org.

To sum up. You get a lot of tools for maintaining the structure for free with the core Books module, but you're restricted to having a hierarchical structure made up if nodes.

With Entity reference, your structure can be made up from any entity type, and it can be a directed graph, but there is no tools to help you maintain the structure or to navigate it (beyond clicking on the links).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.