A.11. views.xml
Files of this type are used to describe views, see Views.
XML schema is available at http://schemas.haulmont.com/cuba/6.8/view.xsd.
views
– root element.
views
elements:
-
view
–view
descriptor.view
attributes:-
class
– entity class. -
entity
– the name of the entity, for examplesales$Order
. This attribute can be used instead of theclass
attribute. -
name
– view name, unique within the entity. -
systemProperties
– enables inclusion of system attributes defined in base interfaces for persistent entitiesBaseEntity
andUpdatable
. Optional attribute,true
by default. -
overwrite
– enables overriding a view with the same class and name already deployed in the repository. Optional attribute,false
by default. -
extends
– specifies an entity view, from which the attributes should be inherited. For example, declaringextends="_local"
, will add all local attributes of an entity to the current view. Optional attribute.
view
elements:-
property
–ViewProperty
descriptor.
property
attributes:-
name
– entity attribute name. -
view
– for reference type attributes, specifies a view name the associated entity should be loaded with. -
fetch
- for reference attributes, specifies how to fetch the related entity from the database. See Views for details.
property
elements:-
property
– associated entity attribute descriptor. This enables defining an unnamed inline view for an associated entity in the current descriptor.
-
-
include
– include anotherviews.xml
file.include
attributes:-
file
– file path according to the Resources interface rules.
-
Example:
<views xmlns="http://schemas.haulmont.com/cuba/view.xsd">
<view class="com.sample.sales.entity.Order"
name="order-with-customer"
extends="_local">
<property name="customer" view="_minimal"/>
</view>
<view class="com.sample.sales.entity.Item"
name="itemsInOrder">
<property name="quantity"/>
<property name="product" view="_minimal"/>
</view>
<view class="com.sample.sales.entity.Order"
name="order-with-customer-defined-inline"
extends="_local">
<property name="customer">
<property name="name"/>
<property name="email"/>
</property>
</view>
</views>
See also the cuba.viewsConfig application property.