Na przykład, mam prośbę EFQ jak:OrderBy odfiltrowuje wiersz z pustym polu w EntityFieldQuery
$query ->entityCondition('entity_type', 'node')
->entityCondition('bundle', 'contenttype')
->propertyCondition('status', 1)
->propertyCondition('language', $language->language, '=')
->fieldOrderBy('field_date', 'value', 'DESC')
->fieldOrderBy('field_code', 'value', 'DESC')
field_code
jest pustych. Gdy dokonam zamówienia w tym polu, wykluczone zostaną wszystkie wiersze, które uzyskały wartość pustą. Jak uniknąć tego zachowania i pozwolić im pozostać w wyniku?
Jak być może zauważyliście przeszukując drupal.org, waszym problemem jest puszka z robakami ... Czy jest jakaś szansa na to, aby wasze pole było nieopłacalne? – pamatt
Absolutnie nie, jest naprawdę źle! Nie ma absolutnie żadnego sposobu na ominięcie tego? –
Jeśli mówimy w kategoriach Mysql, powinieneś dodać warunki zamówienia takie jak 'field_code IS NULL'. Ale jeśli mówimy o EFQ, nie jest to łatwe. Może mógłbyś zmienić EFQ za pomocą hook_entity_query_alter i zmienić queryCallback na swoją własną funkcję. – Maxim