I am having difficulty formatting a views field which is of type Field collection to a view based on an index.
Thing is, there is no "Formatter" selectlist where I can select "View field-collection items" from (and then specify a field-collection view to embed in this view).

Here is a screenshot of a field-collection field inside a "normal" view, that is, of type "Content":
View of type Content

And here is a screenshot of a field-collection field inside a view of type Index:
View of type Index

As you can see in the second image - I do not have a formatter field. How, then, can I do it so I can use my catalog_field_collection field-collection view as an embedded one here? I may be missing something or it is not supported?

Note that I did not find any other field in the index view which has my the name of my field-collection field "Catalog". I tried to add it to the indexed fields (although I do not need it to be indexed) but there was no other "Catalog" field in the index view which I could use.

Thanks a lot!

Comments

amir simantov’s picture

Issue summary: View changes
drunken monkey’s picture

Project: Search API » Entity API
Version: 7.x-1.13 » 7.x-1.x-dev
Status: Active » Fixed

Unfortunately, that's pretty hard to fix. The problem here is that we (have to) assign each field/property a Views field handler, based on what type of field we're dealing with. There is a handler for numeric fields, one for strings, one for dates, etc. There are also specialized ones for entity-valued fields/properties and for Field API fields.
The problem with that is that some fields (like a taxonomy term reference, but also an embedded field collection) are both entities and Field API fields – and we have to decide which of the two handlers we want to use.

We decided to pick the entity handler over the Field API one in the case of such conflicts, which will be the right choice in some cases, but a bad one in others. To fix your problem right in the module, we'd have to revise that decision. Not only would that, again, be the wrong decision in some cases (just the others now), we would also break all (or most of) the existing views with such a field, which would probably be an unacceptable additional cost.

So, the proper solution for you is probably to override this locally on your site (i.e., use entity_views_handler_field_field instead of entity_views_handler_field_entity for the field), which should fix the problem.
I don't think there's anything we can do in a module to help with this (except make it configurable, but that would probably be overkill).

Also, the Views field handlers are provided by the Entity API module, not the Search API itself, but of course you couldn't know that. Moving the issue.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.