dev-master
9999999-dev
MIT
The Requires
Wallogit.com
2017 © Pedro PelΓ‘ez
ΠΠΎΠ΄Π΅Π»Ρ ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ½ΠΎΠΌ Π²ΠΈΠ΄Π΅., (*1)
ΠΠΎΠ΄Π΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π° ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΠ΅Π½ΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠΌΠΏΠΎΠ·Π΅Ρ.
ΠΠ»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎΠΌΠΎΡΠ½ΠΈΠΊΠΎΠ² Π²ΠΈΠ΄Π° (ViewHelper) Π½ΡΠΆΠ½ΠΎ Π² Π²Π°Ρ application.config.php Π² Π²Π΅ΡΠΊΠΈ service_manager ΠΈ listeners Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:, (*2)
'service_manager' => array(
'invokables' => array(
'ZFS\Grid\View\Helper\Configurator' => 'ZFS\Grid\View\Helper\Configurator'
)
),
'listeners' => array(
'ZFS\Grid\View\Helper\Configurator'
)
ΠΠ»ΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ±ΡΠ°ΡΡ Π»ΡΠ±ΠΎΠΉ Π΄ΡΡΠ³ΠΎΠΉ, Π΅ΡΠ»ΠΈ Π΅ΡΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ. ΠΠ»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΡ ΠΏΠΎΠΌΠΎΡΠ½ΠΈΠΊΠΎΠ² Π²ΠΈΠ΄Π°, ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΊ ViewHelperManager:, (*3)
$serviceLocator
->get('ViewHelperManager')
->setInvokableClass('gridRowValue', 'ZFS\Grid\View\Helper\GridRowValue');
ΠΠ»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ Π² ΡΠ°Π±Π»ΠΈΡΠ½ΠΎΠΌ Π²ΠΈΠ΄Π΅ Π½ΡΠΆΠ½Ρ: 1. Π‘Π°ΠΌΠΈ Π΄Π°Π½Π½ΡΠ΅:, (*4)
$users = array(
array(
'id' => 1,
'login' => 'Vasia',
'email' => 'vasia@pupkin.com',
'status' => '0',
),
array(
'id' => 2,
'login' => 'Fedia',
'email' => 'Fedia@nepupkin.com',
'status' => '1',
)
);
$grid = new GridModel();
$grid->setRows($users);
$grid->setColumns(
array(
new ColumnModel(array(
'name' => 'id',
'fieldName' => 'id',
'title' => 'ID',
)),
new ColumnModel(array(
'name' => 'login',
'fieldName' => 'login',
'title' => 'Login',
)),
new ColumnModel(array(
'name' => 'email',
'fieldName' => 'email',
'title' => 'E-mail',
))
)
);
// ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠΌ, ΡΡΠΎ Π½Π°Ρ
ΠΎΠ΄ΠΈΠΌΡΡ Π² ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ΅
return new ViewModel(array('grid' => $grid));
<?php echo $this->grid($grid); ?>
ΠΈΠ»ΠΈ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΡΠ°Π±Π»ΠΈΡΡ Π²ΡΡΡΠ½ΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π°ΠΌΠ΅ΡΠ΅Π½Π½ΠΎ Π½Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΠ»ΠΈ ViewHelper'Ρ., (*5)
ΠΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ColumnModel ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΡΠ΅ΡΠ΅Π· get* ΠΈ set* ΠΌΠ΅ΡΠΎΠ΄Ρ:, (*6)
$column = new ColumnModel();
$column->setName('name');
$column->setFieldName('name');
$column->setTitle('User name');
ΠΠΎΠ»Π½ΡΠΉ Π½Π°Π±ΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Ρ ColumnModel:
- name - ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠ΅ ΠΈΠΌΡ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ;
- fieldName - ΠΈΠΌΡ/ΠΊΠ»ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° Π² ΡΡΡΠΎΠΊΠ΅ Π΄Π»Ρ Π²ΡΠ±ΠΎΡΠΊΠΈ ΠΈ ΠΏΠΎΠ΄ΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π² ΡΡΠ΅ΠΉΠΊΡ;
- title - Π·Π°Π³Π»Π°Π²ΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ;
- formatter - callback, ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΈΠ΄Π΅Ρ ΠΊΠ°ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² ΡΡΠ΅ΠΉΠΊΡ. ΠΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΏΠΎΠΌΠΎΡΠ½ΠΈΠΊΠΎΠΌ Π²ΠΈΠ΄Π° GridRowValue ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ· ΡΡΡΠΎΠΊΠΈ ΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ ΡΡΠΎΠ³ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° Ρ ColumnModel. Π‘ΠΈΠ³Π½Π°ΡΡΡΠ° ΡΡΠ½ΠΊΡΠΈΠΈ: function ($valueFromRowCell, $wholeRow, $currentColumn) {};, (*7)
id ΡΡΠ³Ρ <th> Π² <thead> ΠΈ <tfoot>;class ΡΡΠ³Ρ <th> Π² <thead> ΠΈ <tfoot>;style ΡΡΠ³Ρ <th> Π² <thead> ΠΈ <tfoot>;Π£ GridModel ΡΠΎΠΆΠ΅ Π΅ΡΡΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ:
- id - ΡΡΡΠΎΠΊΠ°, ΠΏΠΎΠ΄ΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π² Π°ΡΡΠΈΠ±ΡΡ id ΡΡΠ³Ρ <table>;
- css - ΡΡΡΠΎΠΊΠ°, ΠΏΠΎΠ΄ΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π² Π°ΡΡΠΈΠ±ΡΡ class ΡΡΠ³Ρ <table>
- style - ΡΡΡΠΎΠΊΠ°, ΠΏΠΎΠ΄ΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π² Π°ΡΡΠΈΠ±ΡΡ style ΡΡΠ³Ρ <table>, (*8)
Π Ρ ColumnModel ΠΈ Ρ GridModel Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΡ
ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΡΠ΅ΡΠ΅Π· ΠΌΠ°Π³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ __get ΠΈ __set Π΄Π»Ρ ΡΡΡΠ½ΠΎΠΉ ΠΈΡ
ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π² ΡΠ°Π±Π»ΠΎΠ½Π°Ρ
ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ., (*9)
Π Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΠΎΠΌΠΎΡΠ½ΠΈΠΊΠΈ Π²ΠΈΠ΄Π°:
- grid - ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² id, css, style;
- gridHeader - ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π±Π»ΠΎΠΊΠ° <thead>;
- gridHeaderRow - ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°: <tr><th>...</th></tr>;
- gridHeaderCell - ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΠΉΠΊΠΈ ΡΡΡΠΎΠΊΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°: <th>..</th>;
- gridBody - ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π±Π»ΠΎΠΊΠ° <tbody>;
- gridBodyRow - ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ ΡΠ΅Π»Π°: <tr><td>...<td></tr>;
- gridBodyCell - ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΠΉΠΊΠΈ ΡΡΡΠΎΠΊΠΈ ΡΠ΅Π»Π°: <td>...</td>;
- gridFooter - ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π±Π»ΠΎΠΊΠ° <tfoot>;
- gridFooterRow - ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ ΡΡΡΠ΅ΡΠ°: <tr><th>...</th></tr>;
- gridFooterCell - ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΠΉΠΊΠΈ ΡΡΡΠΎΠΊΠΈ ΡΡΡΠ΅ΡΠ°: <th>..</th>;
- gridRowValue - ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΡΠ΅ΠΉΠΊΠΈ ΡΡΡΠΎΠΊΠΈ Π΄Π°Π½Π½ΡΡ
., (*10)
ΠΠ»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΠΈΡΡ grid:, (*11)
<?php echo $this->grid($grid); ?>
ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ΅Π½ ΡΡΡΠ΅Ρ, ΠΊ ΠΏΡΠΈΠΌΠ΅ΡΡ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΏΠΎΠΌΠΎΡΠ½ΠΈΠΊΠ°ΠΌΠΈ Π²ΠΈΠ΄Π° Π½ΠΈΠΆΠ΅ ΡΡΠΎΠ²Π½Ρ: gridHeader, gridBody:, (*12)
<?php echo $this->grid()->openTag($grid); ?> <?php echo $this->gridHeader($grid); ?> <?php echo $this->gridBody($grid); ?> <?php echo $this->grid()->closeTag(); ?>
ΠΠΎΠ»Π½Π°Ρ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΠ½ΠΈΠΊΠ°ΠΌΠΈ Π²ΠΈΠ΄Π° Zend\Form., (*13)
MIT, (*14)
MIT