From the project page:
I will be the first to admit, this solution is doing all kinds of unholy things to Drupal's field and entity APIs, so there may be unexpected dragons laying around that I haven't discovered.
The word "unholy" has been nagging in the back of my mind ever since I read through the project page. Would be great if you could elaborate a little on this Dave.
Particularly I am interested to know more about the risks, and possible conflicts, that may be involved when it comes to things such as how to use fields/content stored in Multifield-groups with tokens (field tokens), entity reference and other content design strategies. Also if there might be any issues using it with contexts in Panels or with Rules and other quite common setups.
Comments
Comment #1
dave reidRight now the risks are mostly unknown. This is a new solution to a very hard problem. Most of the solutions involve having actual sub-entities like Field Collections or ECK entities, whereas this solution goes half-way with allowing you to add fields to a multifield "entity" type, but doesn't actually store any data in actual entities, and instead serializes it in the field data. Whenever we have to invoke any of the field or entity-level hooks to the sub-fields, we have to construct a fake "multifield" entity, with all the sub-fields attached to it. This is this risky part, but hasn't shown any major issues so far.
The only risk from the above so far is that if you have file or image fields, the file usage tracking system tracks the usage of those field values to the fake multifield entity, and not the parent entity.
There is a risk since we don't properly expose all the sub-fields to Views or the Entity Property API yet, but that can be solved.
Comment #2
dave reidIn general, anything should be either documented as an open bug report, or documented on the project page. I'm not going to seek to hide anything that I encounter from end users.
Comment #3
tsvenson commentedThanks for elaborating on this Dave. Particularly the information about the risks/limitations of including file fields is valuable to know.
It would probably be a good idea to mention that on the project page. Maybe even remove the "unholy" part as that can possibly scare people away from trying it out. Especially those few who don't know you @Dave Reid is ;)
For the record, you got my outmost respect as a developer and I know you wouldn't hide anything from us on purpose.
Comment #4
elijah lynnYeah, we should turn one of these issues into a "Add README.md" file.
#2093747: Document how the module works