Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/adrenalinkin/visualize-entity-bundle

Provides possibility for visualize entity data by YAML configuration
https://github.com/adrenalinkin/visualize-entity-bundle

symfony-bundle visualize-entity visualize-entity-data visualizer yaml yaml-configuration

Last synced: 11 days ago
JSON representation

Provides possibility for visualize entity data by YAML configuration

Awesome Lists containing this project

README

        

Visualize Entity Bundle [![In English](https://img.shields.io/badge/Switch_To-English-green.svg?style=flat-square)](./README.md)
=======================

Введение
--------

Бандл предоставляет возможность выводить данные сущности для просмотра при помощи YAML конфига.

Установка
---------

### Шаг 1: Загрузка бандла

Откройте консоль и, перейдя в директорию проекта, выполните следующую команду для загрузки наиболее подходящей
стабильной версии этого бандла:
```bash
composer require adrenalinkin/visualize-entity-bundle
```
*Эта команда подразумевает что [Composer](https://getcomposer.org) установлен и доступен глобально.*

### Шаг 2: Подключение бандла

После включите бандл добавив его в список зарегистрированных бандлов в `app/AppKernel.php` файл вашего проекта:

```php
get('linkin_visualize_entity.builder')->buildViewEntity('acme_user_default', $id);

return [
'viewEntity' => $viewEntity,
];
}
}
```

### Шаблон TWIG

Объект класса `ViewEntity` открывает ряд возможностей для работы в twig-шаблоне.
Самый простой способ - это вывод всех полей, которые еще не отображались. Метод `notDisplayed`.

```twig
{# @var viewEntity \Linkin\Bundle\VisualizeEntityBundle\Entity\ViewEntity #}



{% for fieldData in viewEntity.notDisplayed %}

{{ fieldData.label }}:
{{ fieldData.value|raw }}

{% endfor %}


```

При необходимости вывода некоторых полей в специальном форматировании стоит воспользоваться методом `fieldData`.
Последующий вызов метода `notDisplayed` вернет данные которые не будут содержать ранее показанные.

```twig
{# @var viewEntity \Linkin\Bundle\VisualizeEntityBundle\Entity\ViewEntity #}




{{ viewEntity.fieldData('username').label }}
{{ viewEntity.fieldData('username').value|raw }}



{% for fieldData in viewEntity.notDisplayed %}

{{ fieldData.label }}:
{{ fieldData.value|raw }}

{% endfor %}


```

Также можно воспользоваться рядом других методов для более специфичных случаев:
* `entity` - для получения объекта вывода.
* `entityId` - для получения идентификатора объекта.
* `all` - для получения всех полей вывода не учитывая, были ли они уже отображены или нет. При этом можно
передать названия полей, которые следует исключить.
* `alreadyDisplayed` - список всех уже отображенных полей.
* `resetDisplayed` - сбросить статистику отображенных полей.

Визуализаторы
-------------

Визуализация различных типов данных регулируется при помощи визуализаторов. Ознакомиться со всеми предустановленными
визуализаторами можно в разделе
[Описание зарегистрированных визуализаторов](Resources/doc/ru/visualizers_description.md).
Подробнее о создании собственного визуализатора в разделе
[Добавление нового визуализатора](Resources/doc/ru/visualizer_registration.md).

Зависимости
-----------

* [EntityHelperBundle](https://github.com/adrenalinkin/entity-helper-bundle)

Лицензия
--------

[![license](https://img.shields.io/badge/License-MIT-green.svg?style=flat-square)](./LICENSE)