abstract | |
|---|---|
implements |
CustomEntitySetInterface, VirtualExpandResolverInterface |
The translations navigation of a translatable model: one row per field and language — the base language from the column, the further languages from
sdk_translations — so an edit dialog loads what exists. It binds this, not the field, which arrives already in
the request's language. Writing is the owning module's action, through HasTranslations::setTranslations().
A module gives its model one, in a few lines, and registers it with discoverCustomEntitySet():
final class ItemTranslations extends AbstractTranslationsExpand
{
protected function model(): string { return Item::class; }
protected function parentEntityType(): string { return 'Item'; }
}
| Methods | ||
|---|---|---|
public
|
entitySetName(): string
|
# |
public
|
entityType(string $namespace): EntityTypeInterface
|
# |
public
|
expandsOn(): array
|
# |
public
|
resolveExpand(array<string, mixed> $parentRow, string $parentEntityType, ExpandItem $expand): list<array<string, mixed>>
|
# |
public
|
resolve(QueryPlanInterface $plan): Generator
|
# |
public
|
count(QueryPlanInterface $plan): int
|
# |