Skip to Content search facebook instagram pinterest twitter youtube


Interface for adding and editing of sub-records, using a javascript add/delete interface.

The sub-records are stored on a separate table.

    "multiedit": {
        "id": "species",
        "table": "demo_item_species",
        "where": [],
        "single": "Species",
        "reorder": false,
"items": [
/* various sub-items */
] } }

Properties are as follows:

id: (string) a prefix used for all the HTML fields for the entries, akin to the $key parameter for the MultiEdit::display method

table: (string) the table into which the multiedit records will be saved

link: (string) the column in table which links to the parent table. This is optional, as by default it's the singular of the parent table with _id appended, e.g. pages => page_id

where: (array) additional clauses to be used when fetching the existing records. This can usually be left empty, but it could be used, for example, to not display date-limited records which have already expired.

single: (string) a human-readable name for a single record, to be shown on the 'add {single}' button

reorder: (bool) true if the records can be manually ordered by the person filling in the form. The table needs to have a record_order column for this to have any effect.

post-add-js: (string) javascript function name to be called whenever an item is added, see also the internal method Multiedit::setPostAddJavaScript

items: (array) form items such as fields, headings, or html blocks - just as is used for a tab. Multiedits within multiedits are not supported.