mindy / table
1.0.1
2016-04-29 14:37 UTC
Requires
- php: >=5.4
This package is not auto-updated.
Last update: 2024-12-21 17:33:03 UTC
README
Репозиторий является клоном django-tables2
на php.
Пример использования
<?php namespace Modules\Example\Tables; use Mindy\Table\Columns\RawColumn; use Mindy\Table\Table; use Modules\Example\ExampleModule; class ExampleDataTable extends Table { public function getColumns() { return [ 'created_at' => [ 'class' => RawColumn::className(), 'title' => CoreModule::t('Created at') ], 'message' => [ 'class' => RawColumn::className(), 'title' => CoreModule::t('Message') ], 'ip' => [ 'class' => RawColumn::className(), 'title' => CoreModule::t('Ip') ], 'username', 'url' ]; } }
Использование в контроллере:
... public function actionIndex() { $qs = ExampleData::objects(); $table = new ExampleDataTable($qs, [ 'paginationConfig' => [ 'pageSize' => 20 ] ]); echo $this->render('example/index.html', [ 'table' => $table ]); } ... Шаблон: ```twig {{ table|safe }} или {{ table.render()|safe }}
Столбцы (Columns)
В текущей версии реализовано только 3 класса Column
:
TemplateColumn
- Пример использования:
... 'foo' => [ 'class' => '\Mindy\Table\Columns\TemplateColumn', 'template' => 'my_app/my_template.html', 'title' => 'Super title' ] ...
Аргументы передаваемые в шаблон:
... 'value' => $value, // Значение 'record' => $record, // Модель 'table' => $table // Таблица ...
NumberColumn
- Пример использования:
... 'foo' => [ 'class' => '\Mindy\Table\Columns\NumberColumn', 'decimals' => 2, 'decPoint' => '.', 'thousandsSep' => ',', 'title' => 'Super title' ] ...
RawColumn
- Пример использования:
... 'foo' => [ 'class' => '\Mindy\Table\Columns\RawColumn', 'title' => 'Super title' ] ...