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.
Enter a name for the object. This is the is the visible name of the object/table that will also be the label used for the object/table in views.
Only alphanumeric, space and \ / & + - _ ( ) are allowed - this prevents problems in generated code. Use the singular of the name (e.g. Event), the plural name (e.g. Events) and also code names will be automatically generated.
Select a table to import fields from. These will be added when the Object/Table is saved. You can import from a table as many times as you want. So you can actually combine fields from mulitple tables just by selecting one, saving and then selecting another. If a field from the table already exists (matched on name) for the Object Table then it will be ignored.
Select the Component/Extension that this Object/Table is part of.
Select whether this Object/Table is 'read only' or not. Not all code templates will check for whether an object is read-only or not. The enhanced code templates do but the standard ones do not.
If the code template checks for read only objects then if 'read-only' all fields in the object will be generated as 'read-only' on edit forms and no save options or any options to change state, access etc. will be available. The new, delete and copy functions will also be disabled.
The plural of the Object/Table's name which will be used in code comments and text strings.
Auto generated but able to be changed. Only alphanumeric, space and \ / & + - _ ( ) are allowed - this prevents problems in generated code.
The variable name used in code for an Object/Table. This field is auto_generated from the Object/Table name and can be changed. No spaces or punctuation marks (except underscore _) are allowed, the value must be unique within a component and start with a letter.
The variable plural name used in code for an Object/Table. This field is auto_generated from the Object/Table code name and can be changed. No spaces or punctuation marks (except underscore _) are allowed, the value must be unique within a component and start with a letter.
A shortened version of Object/Table name used in text strings e.g. for header labels. It can be identical to the Object/Table name.
Auto generated but able to be changed. Only alphanumeric, space and \ / & + - _ ( ) are allowed - this prevents problems in generated code.
A shortened version of Object/Table plural name used in text strings e.g. for header labels. It can be identical to the Object/Table plural name.
Auto generated but able to be changed. Only alphanumeric, space and \ / & + - _ ( ) are allowed - this prevents problems in generated code.
Chose the default Fieldset for this Object/Table. When creating the Object/Table pre-defined fields (e.g. the 'id' field) are automatically created and their fieldset is set to the default fieldset.
Upload a 16 x 16 pixel icon used for the Object/Table in menu items. This must be a png file.
A 48 x 48 pixel icon used for the Object/Table in titles. This must be a png file.
Select the options to control which parts of Joomla! (admin, site, plugins and modules) are to be generated for this Object/Table. Irrespective of what is set for the Object/Table, the value at the Component/Extension level will override that at the Object/Table level.
Select whether to generate the administrator part of Joomla! for this Object/Table. If not selected then no administrator part for Object/Table will be generated. If the Generate Admin setting at the component/Extension level is not set then irrespective of this setting no administrator part for the Object/Table will be generated.
This may have only limited value at the moment as the component/extension structure requires an administrator area for it to function properly.
Select whether to generate the site front end of Joomla! for this Object/Table. If not selected then no site front end for Object/Table will be generated. If the Generate Site setting at the Component/Extension level is not set then irrespective of this setting no site front end for the Object/Table will be generated.
Select whether to generate the views in the front end of Joomla! for this Object/Table. If not selected then site front end views for Object/Table will be generated. If the Generate Site View setting at the Component/Extension level is not set then irrespective of this setting no site front end views for the Object/Table will be generated.
For this to be selected the Generate Site option for the Object/Table must also be selected.
There may be a requirement to have access to models in the front end but not to separate views e.g. for field values tables.
Select whether to generate the front end Article Layout for this Object/Table. If the Generate Site - Article Layout option at the Component/Extension level is not set then irrespective of this setting no front end Article Layout for the Object/Table will be generated.
For this to be selected the Generate Site and Generate Site Views options for the Object/Table must also be selected.
Select whether to generate the front end Blog Layout for this Object/Table. If the Generate Site - Blog Layout option at the Component/Extension level is not set then irrespective of this setting no front end Blog Layout for the Object/Table will be generated.
For this to be selected the Generate Site and Generate Site Views options for the Object/Table must also be selected.
The blog layout is based on the core Joomla! content blog layouts.
Select whether to generate the standard Joomla! Categories functionality for this Object/Table. If the Generate Categories setting at the Component/Extension level is not set then irrespective of this setting no Categories functionality for the Object/Table will be generated.
For code templates that do not support multiple objects being linked to categories (e.g. Standard ones) then the setting at Object/Table level is ignored and only the Component/Extension's default Object/Table will be able to have categories.
Select whether to generate the front end Categories View for this Object/Table. If the Generate Categories - Site Categories View option at the Component/Extension level is not set then irrespective of this setting no front end Categories View for the Object/Table will be generated.
For this to be selected the Generate Categories, Generate Site and Generate Site Views options for the Object/Table must also be selected.
Select whether to generate the front end Category View for this Object/Table. If the Generate Categories - Site Category View option at the Component/Extension level is not set then irrespective of this setting no front end Category View for the Object/Table will be generated.
For this to be selected the Generate Categories, Generate Site and Generate Site Views options for the Object/Table must also be selected.
Select whether to generate the front end plugins of Joomla! for this Object/Table. If not selected then no front end plugins for Object/Table will be generated. If the Generate Plugins setting at the Component/Extension level is not set then irrespective of this setting no front end plugins for the Object/Table will be generated.
Select whether to generate the front end Search (legacy Joomla! search) plugin for this Object/Table. If the Generate Plugins - Search setting at the Component/Extension level is not set then irrespective of this setting no Search front end plugins for the Object/Table will be generated.
For this to be selected the Generate Plugins option for the Object/Table must also be selected.
Select whether to generate the front end Finder (Smart Search) plugin for this Object/Table. If the Generate Plugins - Finder setting at the Component/Extension level is not set then irrespective of this setting no Finder front end plugins for the Object/Table will be generated.
For this to be selected the Generate Plugins option for the Object/Table must also be selected.
Select whether to generate the front end Item Navigation plugin for this Object/Table. If the Generate Plugins - Item Navigation setting at the Component/Extension level is not set then irrespective of this setting no Item Navigation front end plugins for the Object/Table will be generated.
For this to be selected the Generate Plugins option for the Object/Table must also be selected.
Select whether to generate the front end Vote plugin for this Object/Table. If the Generate Plugins - Vote setting at the Component/Extension level is not set then irrespective of this setting no front end plugins for the Object/Table will be generated.
For this to be selected the Generate Plugins option for the Object/Table must also be selected.
Select whether to generate the front end Page Break plugin and associated code to insert page breaks for this Object/Table. If the Generate Plugins - Page Break setting at the Component/Extension level is not set then irrespective of this setting no front end plugins for the Object/Table will be generated.
For this to be selected the Generate Plugins option for the Object/Table must also be selected.
Select whether to generate the front end Email Cloaking plugin and associated code to mask email addresses for this Object/Table. If the Generate Plugins - Email Cloaking setting at the Component/Extension level is not set then irrespective of this setting no front end plugins for the Object/Table will be generated.
For this to be selected the Generate Plugins option for the Object/Table must also be selected.
Select whether to generate the front end Load Module plugin and associated code to insert modules for this Object/Table. If the Generate Plugins - Load Module setting at the Component/Extension level is not set then irrespective of this setting no front end plugins for the Object/Table will be generated.
For this to be selected the Generate Plugins option for the Object/Table must also be selected.
Select whether to generate the front end Events (customisable plugin with place holder for each event raised) plugin for this Object/Table. If the Generate Plugins - Events setting at the Component/Extension level is not set then irrespective of this setting no Events front end plugins for the Object/Table will be generated.
For this to be selected the Generate Plugins option for the Object/Table must also be selected.
The Events plugin is only available in the Enhanced code templates.
Select whether to generate the front end modules of Joomla! for this Object/Table. If not selected then no front end modules for the Object/Table will be generated. If the Generate Modules setting at the Component/Extension level is not set then irrespective of this setting no front end modules for the Object/Table will be generated.
Select the options that are standard fields/features in Joomla! that you wish to include in this Object/Table.
The settings will include not just the field in a table and form but also the standard code for how it is used within the core Joomla! components.
The values set at the Component/Extension level may be over ruled by the settings for this Object/Table.
Select whether to include Joomla!'s legacy access control and associated code for this Object/Table. This over-rides the Component/Extension level setting.
Select whether to include Joomla!'s 'alias' field and associated code for this Object/Table. This can only be set if 'Include Name' is also set.
This over-rides the Component/Extension level setting.
Select whether to include the Joomla! Asset ACL functionality for this Object/Table. This over-rides the Component/Extension level setting.
Select whether to include Joomla!'s ACL and associated code for record level access control on this Object/Table. This can only be set if 'Include Asset ACL' is also set.
This over-rides the Component/Extension level setting.
Select whether to include Joomla!'s Batch functionality for this Object/Table. This over-rides the Component/Extension level setting.
Select whether to include Joomla!'s 'checked_out' fields and associated check in/check out code for this Object/Table. This over-rides the Component/Extension level setting.
Select whether to include a copy functionality for this Object/Table. If not selected for inclusion on this Object/Table then no copy functionality for Batch copy, Save and Copy, Cascade Copy or a Copy button will be generated. This over-rides the Component/Extension level setting.
Select whether to include Joomla!'s 'created' and 'created by' fields and associated code for this Object/Table. This over-rides the Component/Extension level setting.
Select whether to include Joomla!'s 'description' field and associated code for this Object/Table. This over-rides the Component/Extension level setting.
Select whether to include Joomla!'s 'featured' field and associated code for this Object/Table. This over-rides the Component/Extension level setting.
Select whether to include Joomla!'s 'hits' field and associated code for this Object/Table. This over-rides the Component/Extension level setting.
Select whether to include Joomla!'s set of image fields and associated code for this Object/Table. This over-rides the Component/Extension level setting.
Select whether to include Joomla!'s 'intro' field and associated code for this Object/Table. This can only be set if 'Include Description' is also set.
This over-rides the Component/Extension level setting.
Select whether to include a language fields and associated code for this Object/Table.
This over-rides the Component/Extension level setting.
Select whether to include Joomla!'s 'meta data' fields and associated code for this Object/Table. This over-rides the Component/Extension level setting.
Select whether to include micro data mark-up of front end display output for this Objects/Table. This over-rides the Component/Extension level setting.
Joomla! 3.3 onwards only.
Select whether to include Joomla!'s 'modified' and 'modified by'fields and associated code for this Object/Table. This over-rides the Component/Extension level setting.
Select whether to include a name field and associated code for this Object/Table.
Note:in Joomla! core components and most other components there is a mix of use of either 'title' or 'name' as being the short descriptor field for a record. It was decided to use 'name' for this but plan in later enhancements to Component Architect and code templates to allow a choice for this.
This over-rides the Component/Extension level setting.
Select whether to include an ordering field and associated code for this Object/Table. Global component and menu item params will still be available. This over-rides the Component/Extension level setting.
Select whether to include global component level params and associated code for this Object/Table.
Any combination of 'Global', 'Menu Item' and 'Record Level' params can be selected and the code will then be generated to check for the values set in the lowest level params before checking higher levels i,e, check record level first, then menu item and then global.
This over-rides the Component/Extension level setting.
Select whether to include global menu level params and associated code for this Object/Table.
Any combination of 'Global', 'Menu Item' and 'Record Level' params can be selected and the code will then be generated to check for the values set in the lowest level params before checking higher levels i,e, check record level first, then menu item and then global.
This over-rides the Component/Extension level setting.
Select whether to include data record level params and associated code for this Object/Table.
Any combination of 'Global', 'Menu Item' and 'Record Level' params can be selected and the code will then be generated to check for the values set in the lowest level params before checking higher levels i,e, check record level first, then menu item and then global.
This over-rides the Component/Extension level setting.
Select whether to include standard Joomla! 'publish up' and 'published down' date fields and associated code for this Object/Table. This over-rides the Component/Extension level setting.
Select whether to include Joomla!'s 'state' field and associated code for this Object/Table. This over-rides the Component/Extension level setting.
This is used to set the status of the record e.g. Unpublished, Published, Trashed or Archived. The end user sees this as 'status' or 'published' but internally this uses the database field called 'state'.
Future releases of Component Architect may change this internal field to be 'status' as the use of the field name 'state' causes confusion with the PopulateState function and 'state' part of an object of class JModel or JModelAdmin.
Select whether to include tags functionality for this Objects/Table. Note in Joomla! tags are not held in the Object/Table but in a separate table which links content to tags.
This over-rides the Component/Extension level setting.
Select whether to include Joomla!'s set of 3 url links and associated code for this Object/Table. This over-rides the Component/Extension level setting.
Select whether to include versions functionality for this Objects/Table. Note in Joomla! version history are not held in the Object/Table but in a separate table which links content to version history. A latest version field is defined in the Object/Table.
This over-rides the Component/Extension level setting.