Component Definitions

In Component Architect you enter the details of each component/extension your wish to generate in a Component Definition.  This Component Definition consists of records in four main tables:

  • Components/Extensions

    A Component/Extension is the main definition record for the component (or extension) to be generated and provides the publishing details such as author, website, copyright etc. for the generation of the code. The default settings for the features and functionality to be generated for each Object/Table can also be specified.

  • Objects/Tables

    Each table to be included in the Component/Extension must have an associated Object/Table defined.  These records will define the key attributes of the object/table and also set the features and functionality that will be generated for the object/table.  The selected features and functionality will result in pre-defined fieldsets and fields being automatically generated.

    The term 'Object/Table' has been used because although most records will refer to database table, in the future there is the possibility of defining objects that are not database tables.

  • Fieldsets

    Within each Object/Table the fields to be generated may be grouped into Fieldsets . This allows for the development of front end views that position sets of fields in specific areas of the components output e.g. one fieldset may be placed at bottom of the output area - overriding any sequence for the fields themselves.

    Some predefined fieldsets are automatically generated based on the feature and functionality settings in an object/table.

  • Fields

    Each attribute of a table or a property of an object is defined as a Field within a Fieldset and an Object/Table.  The field will be one of a set of pre-defined Field Types.  Currently all of the Joomla field types are supported and further field types will be added as required.

    Fields may also be contained in other fields i.e. Registry/JSON type fields. To do this first define the field into which other fields are stored with a field type of 'Registry'.  Then as you define the other fields you can specify a link to the registry field.

    Some predefined fields are automatically generated based on the feature and functionality settings in an object/table.


Below you can find further details of the component definition functionality in the Free and Pro version of Component Architect, and also some ideas for enhancements that we are already working on.

Component Definitions - Free

The free Component Architect product provides enough capabilities for you to define extensive Joomla components with multiple tables and as many fields as you wish.  It has a full set of standard Joomla! field types to select from when defining you fields and you can organise the fields into any number of fieldsets that you require.

Although free, Component Architect still allows you to define unlimited components/extensions, objects/tables, fieldsets and fields.  Plus you can regenerate you components as often as you wish.

Read more: Component Definitions - Free

Component Definitions - Enhancements

The component definitions provide the necessary functionality for generating components that will follow the standard Joomla! core components, but as new requirements are identified for enhanced Pro code templates or new code templates then changes will be required to the functionality of component definitions. The majority of such enhancements will only ever be applicable to the Pro version of Component Architect.  The functionality in the free product already provides what is needed to generate basic Joomla! components, and new functionality will be added only to meet additional features added to later releases of Joomla!'s core components

Read more: Component Definitions - Enhancements

We use cookies to improve our website and your experience when using it. Cookies used for the essential operation of the site have already been set. To find out more about the cookies we use and how to delete them, see our Use of cookies.

I accept cookies from this site.