PHP 8.2.30
Preview: populator.doc.md Size: 1.14 KB
//proc/thread-self/root/home/byroehnu/.trash/node_modules11/adminjs/lib/backend/utils/populator/populator.doc.md

Populates all references in records.

### Usage

Take a look at an example action handler getting the Product record and populates it. We assume
that Product has categoryId and it is marked as a 'reference' ({@link PropertyOptions#reference}) to
a Category.

```javascript
const { populator } = require('adminjs')


// action handler for showing product with categories
const showProductsHandler = async (request, response, context) => {
  const { payload } = request
  const { _admin, currentAdmin } = context
  const ProductResource = _admin.findResource('Product')

  const product = await ProductResource.findOne()
  // product.populated is empty

  const [populatedProduct] = await populator([product])
  // populatedProduct.populated - has a categoryId filled with Category params

  return {
    record: record.toJSON(currentAdmin) // returns RecordJSON with populated field as well
  }
}
```

### Where you might want to use it?

Populator is used in all built-in actions so you don't need to take care of populating fields on
your own. Situation changes when you want to create a custom action and use data not from the
context but right from the database query.

Directory Contents

Dirs: 0 × Files: 6

Name Size Perms Modified Actions
71 B lrw-r--r-- 2026-02-28 00:31:42
Edit Download
3.79 KB lrw-r--r-- 2026-02-28 00:31:48
Edit Download
4.30 KB lrw-r--r-- 2026-02-28 00:31:48
Edit Download
1.14 KB lrw-r--r-- 2026-02-28 00:31:56
Edit Download
674 B lrw-r--r-- 2026-02-28 00:31:48
Edit Download
323 B lrw-r--r-- 2026-02-28 00:31:48
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).