Связать ассоциацию XSOData в UI5?
Допустим, у меня есть Employee
сущность, связанная с Address
сущность в XSOData, и я хочу связать их с одним элементом управления - StandardListItem
, Как этого добиться?
<List id="EmployeeList" headerText="Employees" items="{ path: '/Employee'}">
<items>
<StandardListItem title="{Name}" //from Employee entity
description="{Address/City}" //from Address entity
/>
</items>
</List>
Связанные детали адреса доступны на Employee('emp1')/Address/
ТИА.
1 ответ
Если я правильно понимаю, то Address
Элемент является сущностью. Вы не можете привязать свойство к целому объекту. Я бы предположил, что он имеет некоторые свои собственные свойства (например, Street
, City
, так далее.). Вы должны привязать свойство элемента управления UI5 либо к одному свойству объекта OData, либо использовать связывание форматера / выражения, чтобы объединить их вместе.
Тем не менее, вам все равно придется немного изменить свой код. Связанный Address
не получается по умолчанию, когда вы делаете привязку, как у вас. Чтобы получить его, вы должны использовать параметр $expand.
<List id="EmployeeList" headerText="Employees"
items="{path: '/Employee', parameters: {expand: 'Address'}}">
<items>
<StandardListItem title="{Name}"
description="{Address/SomePropertyFromTheAddressEntity}"
/>
</items>
</List>