PHPackages                             symbiote/silverstripe-multirecordfield - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. symbiote/silverstripe-multirecordfield

ActiveSilverstripe-module[Utility &amp; Helpers](/categories/utility)

symbiote/silverstripe-multirecordfield
======================================

A module for editing multiple records on a backend or frontend form.

3.0.1(7y ago)16154[5 issues](https://github.com/symbiote/silverstripe-multirecordfield/issues)BSD-3-ClausePHP

Since Aug 1Pushed 7y ago1 watchersCompare

[ Source](https://github.com/symbiote/silverstripe-multirecordfield)[ Packagist](https://packagist.org/packages/symbiote/silverstripe-multirecordfield)[ RSS](/packages/symbiote-silverstripe-multirecordfield/feed)WikiDiscussions master Synced yesterday

READMEChangelog (3)Dependencies (2)Versions (19)Used By (0)

Multi Record Field
==================

[](#multi-record-field)

A drop-in replacement for GridField. Allows creating and editing multiple records in a backend or frontend form.

Supports
--------

[](#supports)

- SilverStripe 3.2 and up
- PHP 5.4+
- Display Logic
- Dropzone Module
- Quick Add New Module

Example Use
-----------

[](#example-use)

```
class Page extends SiteTree {
    private static $has_many = array(
        'Cells'      => 'BasicContent',
    );

    public function getCMSFields()
    {
        $fields = parent::getCMSFields();

        $editor = MultiRecordField::create('ContentCellEditor', 'Content Cells', $this->Cells());
        $fields->addFieldToTab('Root.ContentCells', $editor);

        return $fields;
    }
}
```

**MultiRecordField Nesting**

The `MultiRecordField` supports nesting of other `MultiRecordField`s. When the field detects a `MultiRecordField`in the set of fields to edit, that field is added as another nested toggle field inside the parent set of fields for editing.

\*\*Transform existing GridField into MultiRecordField \*\*

You may want to retain a few configurations made to the GridField that MultiRecordField supports. In that case, you'll want to utilize the `MultiRecordTransformation` class.

This will ensure the properties on GridFieldExtensions `GridFieldAddNewMultiClass` will carry across.

```
