PHPackages                             evlimma/actionpack - 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. [Database &amp; ORM](/categories/database)
4. /
5. evlimma/actionpack

ActiveLibrary[Database &amp; ORM](/categories/database)

evlimma/actionpack
==================

Extend a class of type `DataLayer` | Estende uma classe do tipo `DataLayer`

1.0.24(2mo ago)045MITPHPPHP &gt;=8.0

Since Jun 27Pushed 2mo agoCompare

[ Source](https://github.com/evlimma/actionpack)[ Packagist](https://packagist.org/packages/evlimma/actionpack)[ Docs](http://www.codigospace.com.br)[ RSS](/packages/evlimma-actionpack/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (26)Used By (0)

Trait `ActionPack` @evlimma
===========================

[](#trait-actionpack-evlimma)

The `ActionPack` trait provides a reusable set of methods for models extending a `DataLayer`-like class (such as `CoffeeCode\DataLayer`).
It encapsulates common logic for dynamic filtering, paginated queries, and frequent data access operations.

A trait `ActionPack` fornece um conjunto reutilizável de métodos para modelos que estendem uma classe do tipo `DataLayer` (como o `CoffeeCode\DataLayer`).
Ela encapsula a lógica comum para criação dinâmica de filtros, buscas paginadas e operações frequentes de acesso a dados.

---

### Highlights

[](#highlights)

- Easy to set up (Fácil de configurar)

---

Installation
------------

[](#installation)

Data Layer is available via Composer:

```
"evlimma/actionpack": "1.0.*"
```

or run

```
composer require evlimma/actionpack
```

---

Documentation
=============

[](#documentation)

Requirements / Requisitos
-------------------------

[](#requirements--requisitos)

To use this trait properly, the class that uses it must:

- Extend a class that provides methods like `find()`, `count()`, `limit()`, `offset()`, `order()`, and `fetch()`.
- Define the `$primary` property (primary key field name).
- Have access to the `DynamicFilter` class.
- Have access to the model `OrderColItem` (used for dynamic column filters).

Para usar essa trait corretamente, a classe que a utiliza deve:

- Estender uma classe que forneça métodos como `find()`, `count()`, `limit()`, `offset()`, `order()` e `fetch()`.
- Definir a propriedade `$primary` (nome do campo chave primária).
- Ter acesso à classe `DynamicFilter`.
- Ter acesso ao model `OrderColItem` (usado para filtros dinâmicos de colunas).

---

Available Methods
-----------------

[](#available-methods)

### `message(): ?Message`

[](#message-message)

Returns the current message instance. Useful for returning success or error feedback.

Retorna a instância atual da mensagem. Útil para retornar mensagens de sucesso ou erro.

---

### `addfields(): ?object`

[](#addfields-object)

Builds dynamic filters based on the `$addfields` array using the `DynamicFilter` class.
It also includes extra column filters from the associated model.

Cria filtros dinâmicos com base no array `$addfields`, usando a classe `DynamicFilter`.
Também adiciona filtros extras com base nas colunas do modelo associado.

---

### `listEntity(): ?array`

[](#listentity-array)

Fetches all records from the current entity using dynamic filters.

Busca todos os registros da entidade atual usando filtros dinâmicos.

---

### `findByPag(?array $dataArr = null, ?int $itensPerPage = ITEMS_PER_PAGE, int $start = 1): ?object`

[](#findbypagarray-dataarr--null-int-itensperpage--items_per_page-int-start--1-object)

Returns a paginated set of results using filters.
Returns an object with:

- `findCount`: total matched records
- `findFetch`: current page data

Retorna um conjunto paginado de resultados usando filtros.
Retorna um objeto com:

- `findCount`: total de registros encontrados
- `findFetch`: dados da página atual

---

### `findByActive(): ?array`

[](#findbyactive-array)

Returns all records with `status = 1`. Useful to fetch only active entries.

Retorna todos os registros com `status = 1`. Útil para buscar apenas os registros ativos.

---

### `findByKey(int $id): ?self`

[](#findbykeyint-id-self)

Finds a single record by its primary key.

Busca um único registro com base na chave primária.

---

### `findByFields(?array $filter): ?array`

[](#findbyfieldsarray-filter-array)

Finds records by an associative array of filters, applying `=` conditions on each field.

Busca registros com base em um array associativo de filtros, aplicando condições de igualdade (`=`) em cada campo.

---

###### For details on how to use the ActionPack, see the sample folder with details in the component directory

[](#for-details-on-how-to-use-the-actionpack-see-the-sample-folder-with-details-in-the-component-directory)

Para mais detalhes sobre como usar o ActionPack, veja a pasta de exemplo com detalhes no diretório do componente

---

Benefits / Benefícios
---------------------

[](#benefits--benefícios)

- Reduces duplicated logic across multiple models.
- Centralized and flexible filtering system.
- Ready-to-use pagination and query patterns.
- Easier maintenance and cleaner code.
- Reduz a duplicação de lógica entre diversos modelos.
- Sistema de filtros centralizado e flexível.
- Padrões de paginação e busca prontos para uso.
- Código mais limpo e fácil de manter.

---

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](https://github.com/evlimma/actionpack/blob/master/CONTRIBUTING.md) for details.

Support
-------

[](#support)

###### Security: If you discover any security related issues, please email  instead of using the issue tracker.

[](#security-if-you-discover-any-security-related-issues-please-email-contatocodigospacecombr-instead-of-using-the-issue-tracker)

Se você descobrir algum problema relacionado à segurança, envie um e-mail para  em vez de usar o rastreador de problemas.

Thank you

Credits
-------

[](#credits)

- [Everton A. Lima](https://github.com/evlimma) (Developer)
- [All Contributors](https://github.com/evlimma/actionpack/graphs/contributors) (This Rock)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](https://github.com/evlimma/actionpack/blob/master/LICENSE) for more information.

###  Health Score

40

—

FairBetter than 88% of packages

Maintenance85

Actively maintained with recent releases

Popularity8

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity51

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~10 days

Recently: every ~2 days

Total

25

Last Release

79d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/b0d890f74025cdcf2e63be7dd692572637cbd071bca63085bf1e17f51c07fb4e?d=identicon)[evlimma](/maintainers/evlimma)

---

Top Contributors

[![evlimma](https://avatars.githubusercontent.com/u/72273323?v=4)](https://github.com/evlimma "evlimma (25 commits)")

---

Tags

classtraitEvlimmaCodigoSpaceActionPack

### Embed Badge

![Health badge](/badges/evlimma-actionpack/health.svg)

```
[![Health](https://phpackages.com/badges/evlimma-actionpack/health.svg)](https://phpackages.com/packages/evlimma-actionpack)
```

###  Alternatives

[cybercog/laravel-ban

Laravel Ban simplify blocking and banning Eloquent models.

1.1k651.8k11](/packages/cybercog-laravel-ban)[cybercog/laravel-love

Make Laravel Eloquent models reactable with any type of emotions in a minutes!

1.2k302.7k1](/packages/cybercog-laravel-love)[phpauth/phpauth

A secure user authentication class for PHP websites, using a powerful password hashing system and attack blocking to keep your website and users secure.

894196.1k3](/packages/phpauth-phpauth)[rtconner/laravel-likeable

Trait for Laravel Eloquent models to allow easy implementation of a 'like' or 'favorite' or 'remember' feature.

394388.0k5](/packages/rtconner-laravel-likeable)[esensi/model

The base model traits of Esensi

20266.5k1](/packages/esensi-model)[reinder83/binary-flags

Useful class for binary operations

1374.5k](/packages/reinder83-binary-flags)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
