Experimental project

This is a sandbox project, which contains experimental code for developer use only.

The main idea of this module is to provide more useful ways to use the relation module to connect entities to one another by attaching some of that functionality to specific paths.

The first phase of the connect module will provide 2 modes of functionality:

- The first one, (the one currently under development) will allow the connection (through a relation) of a specific entity to entities of a specific type or bundle. This can be usful for example if you wanted to have a friends system in your site, in which you want each specific user (a specific entity) to relate to another group of entities (users).

- The second type of functionality that this module will offer, will be the relation of an entity to another entity on creation. In the first type, we are relating entities that already exist, but in some cases we might want to automatically connect an entity to another when it is created. One example of this use would be a user gallery, where everytime an image entity gets created we wanted to be automatically related to its creator, or a message system in which when a message gets created we want that message to be connected to the recepient of the message (in the simplest case) or to both the creator and recipient (this case we will not handle initially)

The proposed approach in this module is to attach this functionality to the administration area to where the functionality is relevant. In the case of the two given examples, this module would create 2 tabs on a user's path, one for the gallery (e.j. user/%/gallery) and one for the messages (e.j. user/%/messages).

The second phase of the module would be to create relations through embedding. What I mean by this is merging the two edit or add forms of the entities we desire to relate. This functionality would be similar to what is provided by the field collection module, but in this case ANY entity will be able to behave as a field collection. One specific example of where this could be used is on creating an Address entity. We don't want a user to have to go to a different area of our site to add an address that later on will have to be connected to their user. we want them to add their address when they are creating their user account, even if we want to handle the user and the address as separate entities. I know this can be accomplish with the address field, but the power of this functionality will be the arbitrary merging of any the forms of any two entities that we want to connect as part of our data model.

I believe that will cover a big chunck of the gaps that are out there. any other cases of connections can be handle through modules like entity_reference, or though the relation_dummy_field if you would like for relation to be your one stop shop for connecting your entities.

Hopefuly this would make data-driven website design a breeze, and the administration of our data a lot more intuitive.

Project information