PHPackages                             pozitronik/yii2-grid-config - 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. pozitronik/yii2-grid-config

ActiveYii2-extension[Utility &amp; Helpers](/categories/utility)

pozitronik/yii2-grid-config
===========================

Configurable grids for YII2

1.0.13(9mo ago)13.8k5[1 issues](https://github.com/pozitronik/yii2-grid-config/issues)1GPL-3.0-or-laterPHPPHP &gt;=8.0CI passing

Since Feb 27Pushed 9mo ago1 watchersCompare

[ Source](https://github.com/pozitronik/yii2-grid-config)[ Packagist](https://packagist.org/packages/pozitronik/yii2-grid-config)[ RSS](/packages/pozitronik-yii2-grid-config/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (17)Versions (20)Used By (1)

GridConfig
==========

[](#gridconfig)

Конфигурирование GridView с сохранением настроек каждого пользователя.

[![Build Status](https://github.com/pozitronik/yii2-grid-config/actions/workflows/ci_with_postgresql.yml/badge.svg)](https://github.com/pozitronik/yii2-grid-config/actions)

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

[](#installation)

The preferred way to install this extension is through [composer](http://getcomposer.org/download/).

Run

```
php composer.phar require pozitronik/yii2-grid-config "dev-master"

```

or add

```
"pozitronik/yii2-grid-config": "dev-master"

```

to the require section of your `composer.json` file.

Requirements
------------

[](#requirements)

Yii2, PHP &gt;= 7.4.0

Описание и использование
------------------------

[](#описание-и-использование)

Идея модуля в том, чтобы позволить в рантайме конфигурировать *любой* экземпляр GridView, сохранить конфигурацию и применить её при следующем рендере GridView. Это достигается тем, что вместо

```
GridView::widget([
    ...
]);
```

вызывается

```
GridConfig::widget([
    'grid' => GridView::begin([// 'users-grid',// GridView::begin([
        'id' => 'users-grid',//params->bsVersion`.

```
'params' => [
    'bsVersion' => '3'//или '4'
]
```

Конфигурация
------------

[](#конфигурация)

Для хранения персональных настроек модуль опирается на расширение [pozitronik/yii2-users-options](https://github.com/pozitronik/yii2-users-options). После установки может потребоваться конфигурация этого расширения согласно документации и применение миграции:

`yii migrate --migrationPath=@vendor/pozitronik/yii2-users-options/migrations`

Конфигурация модуля GridConfig в базовом случае сводится к его подключению в web.php:

```
'modules' => [
    'gridconfig' => [
        'class' => GridConfigModule::class
    ]
]
```

Другие настройки модуля:

```
'modules' => [
    'gridconfig' => [
        'class' => GridConfigModule::class,
        'params' => [
            'viewPath' => null, /* Если задано, позволяет указать путь к каталогу шаблонов, используемых виджетом (структура аналогична /src/views/) */
            'saveUrl' => '/my-controller-id/my-save-action', /* Адрес постинга применяемых настроек (например, если вы решили переопределить контроллер модуля своим) */
            'minPageSize' => 1,  /* Минимальное разрешенное количество элементов на одну страницу (может быть переопределено в конфигурации каждого отдельного GridConfig::widget) */
            'maxPageSize' => 20, /* Лимит разрешённого количества элементов на одну страницу (может быть переопределён в конфигурации каждого отдельного GridConfig::widget) */
            'defaultGridParams' => [] /* Произвольный набор параметров, подставляемый во все гриды, обслуживаемые виджетом. Параметр никак не проверяется, просто вставляется в конфиг. */
        ]
    ]
]
```

Порядок применения настроек грида, по увеличению приоритета:

- Глобальные настройки из `defaultGridParams`,
- Параметры, переданные при вызове виджета,
- Установленные пользователем настройки.

```
'modules' => [
    'gridconfig' => [
        'class' => GridConfigModule::class,
        'params' => [
            'defaultGridParams' => [
                'filterOnFocusOut' => true
            ]
        ]
    ]
]
```

включит фильтрацию по изменению фокуса для всех вызовов GridConfig. Переданный параметр `'filterOnFocusOut' => false`

```

```

имеет больший приоритет, и перекроет глобальную настройку. Настройка, которую установит себе пользователь имеет самый высший приоритет.

Плавающий заголовок:

При включении плавающего заголовка или плавающего блока с основной информацией (если это поддерживает класс GridView) автоматически задается высота блока в свойстве грида containerOptions. Значение можно переопределить.

Изменение layout GridView
-------------------------

[](#изменение-layout-gridview)

Для базового `yii\grid\GridView` модуль модифицирует свойство $layout, добавляя к нему отрендеренную кнопку вызова модального окна с настройками. Её расположение изменить нельзя.

Для `kartik\grid\GridView` модуль добавляет тег {options}, при рендеринге виджета заменяемый на кнопку вызова модального окна с настройками. Этот тег можно использовать в свойстве $layout стандартным способом. По умолчанию он добавляется к $layout автоматически.

###  Health Score

38

—

LowBetter than 85% of packages

Maintenance38

Infrequent updates — may be unmaintained

Popularity26

Limited adoption so far

Community15

Small or concentrated contributor base

Maturity63

Established project with proven stability

 Bus Factor1

Top contributor holds 96.8% 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 ~84 days

Recently: every ~242 days

Total

16

Last Release

278d ago

Major Versions

1.0.12 → 84.x-dev2025-08-08

### Community

Maintainers

![](https://www.gravatar.com/avatar/76ddc43524bb32eb36568e25b6ae283bc25bb51a4572789997909092145af0f5?d=identicon)[pozitronik](/maintainers/pozitronik)

---

Top Contributors

[![pozitronik](https://avatars.githubusercontent.com/u/2357892?v=4)](https://github.com/pozitronik "pozitronik (120 commits)")[![pepebotika69](https://avatars.githubusercontent.com/u/14938095?v=4)](https://github.com/pepebotika69 "pepebotika69 (2 commits)")[![s1lver](https://avatars.githubusercontent.com/u/4567634?v=4)](https://github.com/s1lver "s1lver (2 commits)")

---

Tags

gridyii2extensionwidget

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/pozitronik-yii2-grid-config/health.svg)

```
[![Health](https://phpackages.com/badges/pozitronik-yii2-grid-config/health.svg)](https://phpackages.com/packages/pozitronik-yii2-grid-config)
```

###  Alternatives

[kartik-v/yii2-grid

Yii 2 GridView on steroids. Various enhancements and utilities for the Yii 2.0 GridView widget.

5576.6M179](/packages/kartik-v-yii2-grid)[kartik-v/yii2-widget-colorinput

An enhanced Yii 2 widget encapsulating the HTML 5 color input (sub repo split from yii2-widgets)

324.8M10](/packages/kartik-v-yii2-widget-colorinput)[kartik-v/yii2-sortable-input

Sortable input widget based on yii2-sortable extension.

24660.4k2](/packages/kartik-v-yii2-sortable-input)[mickgeek/yii2-actionbar

A control bar with bulk actions for the GridView widget.

3444.5k](/packages/mickgeek-yii2-actionbar)[richardfan1126/yii2-js-register

Yii2 widget to register JS into view

1357.2k7](/packages/richardfan1126-yii2-js-register)

PHPackages © 2026

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